選択ボックスに表示するオプションを決定するために、switch ステートメント内で $_GET を使用しています。サーバーを PHP 5.3.21 にアップグレードするまで、状況は良好でした。現在、未定義のインデックスと未定義の変数のエラー メッセージが表示されます。if isset() を含めるようにコードを変更しました。エラーはなくなりましたが、$_GET["menuid"} に値があることを PHP に認識させることができません。
変数を取得しようとしている URL:
http://www.example.com/mod/page/view.php?id=5100&module=1&menuid=2&module=1&page=2
私が使用しているコード:
if (isset($_GET['menuid'])) {
$menuid = $_GET['menuid'];
}
else {
$menuid = "not working";
}
echo $menuid;
switch($menuid) {
// My code
}
結果は次のとおりです。
「機能していません」
編集: PHP サブページでの「var_dump($_GET)」の結果
array(0) { }
EDIT:var_dump($_GET)
PHPメインページの結果
array(4) { ["id"]=> string(4) "5100" ["module"]=> string(1) "1" ["menuid"]=> string(1) "2" ["page"]=> string(1) "2" }
上記の var_dump は、PHP のメイン ページからのものです。元のコードは、file_get_contents(); を使用して PHP のメイン ページに含めた別の PHP ページにあります。file_get_contents() がこの問題を引き起こしますか?