好的,我摇摇头,因为我知道这是显而易见的,但我只是没有得到它。查询应该返回1个带有匹配用户名和密码的结果,然后 - 我只需要检查行中的列/字段“Status”是否设置为Inactive或Suspended - 如果是,则设置$ count的值并设置a msg的$ _SESSION值。
现在看来状态检查不起作用 - 这是因为我是如何比较column.field名称的? $结果[ '状态']?
我的查询如下:
$sql="SELECT * FROM $tbl_name WHERE User_Name='$myusername' and Password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// Verified E-Mail address check
if ($result['Status']=="Inactive") {$count=5;$_SESSION['msg']=="Not Verified";};
答案 0 :(得分:3)
您需要先从结果中提取数据行,然后才能比较值。
这样的事情:
$result = mysql_query($sql);
$data = mysql_fetch_array($result);
if ($data['Status'] == 'Inactive') {
...
}
话虽如此,不使用mysql_ *函数的理由很充分 有关详细信息,请参阅此问题: Why shouldn't I use mysql_* functions in PHP?
答案 1 :(得分:3)
您应该使用mysql_fetch_array
或mysql_fetch_assoc
从查询中获取一系列数据。
$sql="SELECT * FROM $tbl_name WHERE User_Name='$myusername' and Password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// Verified E-Mail address check
$row = mysql_fetch_array($result);
if ($row['Status']=="Inactive") {$count=5;$_SESSION['msg']=="Not Verified";};