-5

私のコードは次のとおりです。

if($_POST['user_id'] = ''){ 
  //some statement;
}

上記のif状態で私は1つだけ入れ=ました。PHPはエラーを表示していませんが、白い空白のページが表示されます。誰か手がかりはありますか?

4

5 に答える 5

2

if($_POST['user_id'] = '')意味:

$_POST['user_id'] '' if ('')..//常にfalseになります

if($_POST['user_id'] == '')意味:

$_POST['user_id'] ''と比較します。if ( comparison)

于 2012-09-15T14:41:54.820 に答える
0

それを試してみてください

これを使って

$user_id = $_POST['user_id'];

if($user_id == ''){ 
  //some statement;
}

のはめ込み

if($user_id = ''){ 
  //some statement;
}

または別のものを試してください

$user_id = $_POST['user_id'];

if(isset($user_id) && !empty($user_id)){ 
  //some statement;
}
于 2012-09-15T14:52:50.283 に答える
0

トローリングか本当の質問かわからない...

あなたはそれを自分で言いました、あなたは単一を使用しています=。等しいかどうかを確認するには2が必要です。

if($_POST['user_id'] == ''){ 
  //some statement;
}

単一の等号を使用すると、基本的に「に設定さ$_POST['user_id']''、それがであるかどうかをテストしますtrue。 」と''評価されるためfalse、何も得られません。

于 2012-09-15T14:40:51.577 に答える
0

これ:

if($_POST['user_id'] = ''){  

空の文字列をに割り当てようとし$_POST['user_id']ます。これ:

if($_POST['user_id'] == ''){  

比較です。ほとんどの場合、2番目の方法を実行する必要があります。最初の方法は$ _POSTの値を上書きし、割り当ての値を返します。

于 2012-09-15T14:41:43.207 に答える
0

有効な条件であるため、エラーは発生しません。

if($_POST['user_id'] = '')

に等しい

$_POST['user_id'] = '';
if($_POST['user_id']){
    //Boolean comparison of a string. Empty = false. Not empty = true.
}

使用例:

function division($var1, $var2){
    if($var2 > 0){
        return $var1/$var2;
    return false;
}

if($result = division(50,2)){
     //It returned 25 which is true!
}

if(!$result = division(50,0)){
    //Returned FALSE because you can't divide by zero!
}
于 2018-03-30T13:54:39.103 に答える