• ベストアンサー

PHPで変数のデータ受け渡しについて

HTMLで下記のようにして入力された データを次ページに受け渡し、 issetで変数に値が代入されていれば ifで分岐処理させたいのですが、 elseの処理しかできません。    <FORM action="次ページ.php" method="GET">    キーワード<BR>    <INPUT type="text" name="keyword">    <INPUT type="submit" value="ボタン"> ボタンをクリックしたら次ページで    if (isset($keyword)) {     分岐処理1;     }    else{     分岐処理2;     } と行いたいのですが、$keywordに値が 代入されているにも関わらず elseの処理がされてしまいます。 どこか構文が間違っているのでしょうか。 どうか教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • neosys
  • ベストアンサー率50% (3/6)
回答No.2

一般的にこのような処理をする場合、formのmethodはpostが推薦されます。 また、phpで受け渡される値は、methodがpostの場合、$_POST[name]にあります。 methodがgetの場合は$_GET[name]にあり、この場合、inputのnameはkeywordのため、if($_GET['keyword'])のようにしてすることができます。

hyengi
質問者

お礼

$keyword ↓ $_GET['keyword'] にしたところ無事データの受け渡しができ 分岐処理も正常にできました。 ありがとうございました。

その他の回答 (1)

  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

こんにちは。 PHPのバージョンによっては $keyword = $_GET['keyword']; と取得しないと取得できない設定に(セキュリティのため) なっていますが、その辺はいかがでしょうか?

hyengi
質問者

お礼

$keyword ↓ $_GET['keyword'] にしたところデータの受け渡しができました。 セーフティモードとの関連でしょうか? バージョンは PHP4.3.9 です。 無事解決しました。ありがとうございました。

関連するQ&A