スレッド表示 | フラット表示〕 全トピック 920 件中 906 番目 次≫ ≪前

お聞きしますが

created: 2003-02-12 14:24 | modified: 2003-02-13 09:47 | reply: 6

[123] お聞きしますが

user: sami | created: 2003-02-12 14:24
top.phpで
テーブル名を入力し、その値を
テーブル名として使いたいのですが、
このようなことは可能なのでしょうか?

今挑戦していたのですが、
例えば
top.php
(ここでテキストボックスからデータを入力する)

kakunin.php
(top.phpで入力したデータを確認のため表示させる)

kensaku.php
(top.phpで入力したデータを確認のため表示させ、入力したデータをテーブル名として、select文で検索を行う)

hyouzi.php
(検索結果[テーブルの中身]を表示する)

このような流れのシステムの場合、
top.php
(ここでデータを入力する)

kakunin.php
(入力したデータを確認のため表示させる)

ここまでは上手くいくのですが、

kakunin.php
(入力したデータを確認のため表示させる)

kensaku.php
(top.phpで入力したデータを確認のため表示させ、入力したデータをテーブル名として、select文で検索を行う)

ここで
Notice: Undefined index: dbname in
となってしまいます。
値は
$val= $HTTP_POST_VARS["dbname"];
で受けているのですが・・・。
reply: 124 返信 編集 削除

[124] スクリプト間で変数を使い回す

user: ゆうじ | created: 2003-02-12 16:08
ユーザーからの入力を
テーブル名にすることは可能です。


ただ、示してある現象では、
テーブル名を変数として取り扱う以前に、
そのテーブル名(変数)がスクリプト間で
渡されて無いように思います。

各スクリプト間で変数(この場合テーブル名)を
使い回しするには、POST を使う場合
こんな仕組みが必要かと思います。

スクリプトA:変数を POST する
 ▼
スクリプトB:変数を得る
スクリプトB:変数を POST する ◎
 ▼
スクリプトC:変数を得る
スクリプトC:変数を POST する
 ▼
スクリプトD:変数を得る


◎印のところ、抜けてませんか?

ちがってたら、
kensaku.phpのソースを挙げてもらったほうがいいかも。
Parent: 123  reply: 125 返信 編集 削除

[125] 一応

user: sami | created: 2003-02-12 18:53
top.php
(ここでテキストボックスからデータを入力する)
<form action=kakunin.php method=post>
<INPUT TYPE="text"NAME="dbname"SIZE=60 VALUE="">


kakunin.php
(top.phpで入力したデータを確認のため表示させる)
<FORM ACTION="kensaku.php" METHOD="POST">
$val = $HTTP_POST_VARS["dbname"];
echo "$val";

kensaku.php
(top.phpで入力したデータを確認のため表示させ、入力したデータをテーブル名として、select文で検索を行う)
<FORM ACTION="hyouzi.php" METHOD="POST">
$val[1] = $HTTP_POST_VARS["$val"];
echo "$val[1]";


hyouzi.php
(検索結果[テーブルの中身]を表示する)
$val[2] = $HTTP_POST_VARS["$val[1]"];
echo "$val[2]";


このようにしているのですが、
間違っているでしょうか??
Parent: 124  reply: 126 返信 編集 削除

[126] 省略されてますが

user: ゆうじ | created: 2003-02-12 19:36
だいぶ省略されてますが、
kakunin.php の中身はこんな感じでよいのでしょうか。

▼kakunin.php
<?php
$val = $HTTP_POST_VARS["dbname"];

// $val の表示
print "<html><head></head><body>\n";
print "<p>dbname:".$val."</p>\n";

// $valの送信フォーム
print "
<FORM ACTION=\"kensaku.php\" METHOD=\"POST\">
<input type=\"hidden\" name=\"val\" value=\"".$val."\">
<input type=\"submit\" value=\"送信\">
</FORM>";

print "</body></html>\n";
?>
Parent: 125  reply: 127 返信 編集 削除

[127] 今やってみたのですが

user: sami | created: 2003-02-12 19:49
上手くいきました!!
どうもありがとうございました☆
Parent: 126  reply: 128 返信 編集 削除

[128] どうもです!

user: ゆうじ | created: 2003-02-12 19:53
いけましたか。よかったです♪
仕事サボってる甲斐がありました。(笑)

・・・で、どこが原因でした?
今後のため、みんなのために、
是非、ご報告いただければ幸いです。
Parent: 127  reply: 129 返信 編集 削除

[129] 問題と言いますか・・・

user: sami | created: 2003-02-13 09:47
一番の原因は、私が
FORMやPOSTの使い方を理解していなかったことだと思います。
ゆうじさんの言う通りに書き直してみたら
すぐに上手くいきました。
ごめんなさい・・・。

すごく助かりました!
Parent: 128  返信 編集 削除
スレッド表示 | フラット表示〕 全トピック 920 件中 906 番目 次≫ ≪前
ページの一番上へ
Googleグックマークに登録 Yahooグックマークに登録 livedoorクリップに登録 @niftyクリップに登録 はてなブックマークに登録 deliciousに登録 Buzzurlに登録 FC2ブックマークに登録
最近更新された掲示板トピックス
管理人Blog
Yahoo Search

最近更新したNote
PHPマニュアル
今日のブックマーク
PHPマニュアル関数検索
関数名を入力し検索ボタンをクリック↑