test.php?number = 1またはtest.php?letter = 1を訪問した場合は、そのページにとどまります。彼らがtest.phpにアクセスした場合、私はそれらがリダイレクトされるようにします。||を使用していますin文で
しかし私は、次の処理が行われ、以下のスクリプトを使用して上記を達成しようとしている:
- ユーザーの訪問がtest.phpを数= 1、彼らはページにとどまる場合は?。
ユーザーがtest.php?letter = 1を訪問した場合、それらはリダイレクトされます。
if(!isset($_GET['number']) === false || $_GET['letter'] === false) { echo '<h1>Hello</h1>'; }else{ header('Location: redirect.php'); exit(); }
注:数字と文字の値を変更することができます!必ずしも1ではありません!
'|| $ _GET ['letter'] === false' $ _GET ['letter'] 'は常にFALSEでしょうか?私はあなたが '|| !isset($ _ GET ['letter'])=== false'はあなたの前の状態に当てはまります。それはそれを見て混乱する方法です。 'if(isset($ _ GET ['number'])|| isset($ _ GET ['letter'])){'そして逆ではなく、誤った応答が偽であるかどうかを逆さまにチェックします。それが* set *かどうかを確認してください。さらに、空であるとみなしてください:http://php.net/manual/en/function.empty.php。最初に値が存在するかどうかを確認します。 – Marcus
@Marcus 'false'をコード行から削除することで、' number'や 'letter'が空であればページにアクセスできます(例えばtest.php?number =) –
下記の私の答えを見てください。 – Marcus