不检查IF条件

时间:2014-04-25 05:37:47

标签: php mysql if-statement

$sql = " SELECT team FROM user_pokemon_db WHERE user_id = '".$id."' ";
$res  = mysql_query($sql);
while($rows = mysql_fetch_assoc($res))
{
    $assgn_team = $rows['team'];
    if($assgn_team > 6)
    {
        //code
    }

     else
    {
        //code
    }
}

我的团队'列由整数组成:0,1,2,3,4,5,6 在我的情况下,如果列'团队'由6号组成,然后我想执行if块。 但它没有检查if条件,我直接跳到了else块。

我确信,问题出在这里:

while($rows = mysql_fetch_assoc($res))
{
    $assgn_team = $rows['team'];
} 

以上逻辑是对的吗?其目的是检查“团队”中的每条记录。列。

2 个答案:

答案 0 :(得分:1)

您需要将值字符串转换为int。类型转换使您可以比较字符串。试试这个:

$assgn_team = (int)$rows['team'];
if($assgn_team > 6)
{
    //code
}

EDIT或使用:

$assgn_team = (int)$rows['team'];
if($assgn_team == 6)
{
    //code
}

答案 1 :(得分:1)

将条件设为

if($ assgn_team> = 6){     ...   }

<强>即

$sql = " SELECT team FROM user_pokemon_db WHERE user_id = '".$id."' ";
$res  = mysql_query($sql);
$assgn_team = $rows['team'];
if($assgn_team >= 6) {
  //code
} else {
  //code
}