0

if else ステートメントがありますが、正しく機能しません。追加すると、データベース情報がifステートメントと一致しない場合でも、最初のステートメントのみがエコーされます=。何が間違っていましたか?

$gameum = $db->fetch("SELECT * FROM accounts WHERE `id` = '$id'");

$status = $gameum['status'];
$gameid = $gameum['gameid'];
$search = $gameum['seraching_for'];

if($gameum['status'] = '0' ) {
$data ='<h1> Who do you want to battle against? </h1><br />
        <form action=""  method="post" id="form-pb" name="pb"   target="_self" >
        USERNAME:<input name="name" type="text" size="40" maxlength="40" />

        <input name="submit" type="submit" value="Search"/>
        </form>
        <a class="goback" href="#">Cancel</a>';
}  else { 
    $data = '<h1> Searching </h1> <br /> Searching for '.$search.'';
}

データベース行のスクリーンショット:

4

4 に答える 4

5
$gameum['status'] = '0' // assigns the value '0' to $gamenum['status']

($gameum['status'] == '0')  // compares the two values 
于 2013-10-26T03:23:49.750 に答える
2

あなたのif声明は

if($gameum['status'] == '0' ) {

小切手を探しているなら、そうするstrictことをお勧めします

if($gameum['status'] === '0' ) {
于 2013-10-26T03:23:07.267 に答える
1

に代入$gameum['status']して0 います。条件ステートメントの場合は、==if 条件に double equals を追加し、変更します

 if($gameum['status'] = '0' ) {

 if($gameum['status'] == '0' ) {

Single equal 値= を割り当てます。

Double equal == Compare value, == は、比較時にデータ型を気にしません。

Triple equal ===2 つのデータ型が同じ型を使用していることを確認するために、データ型がチェックされますvars/objects/whatever

于 2013-10-26T03:23:01.350 に答える
0

変化する

if($gameum['status'] = '0' )  

if($gameum['status'] == '0' ) 

=assigning価値のために。

== compares等しい変数の値

===same typeは、2 つの変数が であり、を持っているかどうかをチェックしsame valueます。

于 2013-10-26T09:23:34.730 に答える