0

私はこのURLを持っています:

localhost/moked/insert_event.php?custnumber=1234&event=E15&port=8088&areanumber=17

ユーザーがこれを次のように変更したかどうかを確認したい:

localhost/moked/insert_event.php?custnumber=1234

変数が空かどうかを確認する方法は知っていますが、ユーザーがパラメーターを取り出したかどうかを知りたいです。どうやってやるの?

4

6 に答える 6

9

単一の変数に対してこれを行うのは非常に簡単です。

if (!isset($_GET['event'])) {
    // event is missing
}

ほとんどの人が知らないのは、issetコマンドは指定した数のパラメーターを必要とするということです。必要なすべてのパラメーターを一度に確認できます。

if (isset($_GET['custnumber'], $_GET['event'], $_GET['port'], $_GET['areanumber'])) {
    // all parameters are set
} else {
    // some are missing
} 
于 2012-11-19T21:09:15.640 に答える
2

何かのようなもの:

if( (!isset($_GET['event'])) || (!isset($_GET['port'])) || ... ) {
   //do stuff
}
于 2012-11-19T21:06:33.660 に答える
1

必要な変数が存在するかどうかを確認します。

if (!isset($_GET['port'])) {
    // do something
}
于 2012-11-19T21:06:45.680 に答える
1

isset($_GET['event'])、、試しisset($_GET['port'])てみてくださいisset($_GET['areanumber'])

isset()を参照

于 2012-11-19T21:08:25.330 に答える
0

変数のリストを確認するには:

$vars=array(
'var1'=>'Var1 Description',
'var2'=>'Var2 Description',
'var3'=>'Var3 Description');
$delim='';
$message='';
foreach($vars as $name=>$description)
{
    if(!isset($_GET[$name]))
    {
        $message.=$delim.$description;
        $delim=', ';
    }
}
if($message!=='')$message='Missing: '.$message;
于 2012-11-19T21:17:08.560 に答える
0
try{
    if(!isset($_GET['custnumber'])){
        throw new Exception('Missing "custnumber" parameter');
    }elseif(!isset($_GET['event'])){
        throw new Exception('Missing "event" parameter');
    }elseif(!isset($_GET['port'])){
        throw new Exception('Missing "port" parameter');
    }elseif(!isset($_GET['areanumber'])){
        throw new Exception('Missing "areanumber" parameter');
    }
}catch(Exception $e){
    echo $e->getMessage();
}
于 2012-11-19T21:09:10.177 に答える