【问题标题】:comparing field from database with integer in php将数据库中的字段与php中的整数进行比较
【发布时间】:2011-12-15 10:07:27
【问题描述】:

我从数据库中提取了用户名和密码,并且它们匹配,我可以通过登录页面。但我想限制对用户的一些访问,并为管理员提供访问权限,我使用数据库中的字段 admin 来执行此操作。 admin 是 int,可以有值 1 和 0。此代码始终输入此 if ($result == '1')else barnch。

真的很烦,你能提供一些线索吗?

$sql="SELECT admin FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";

$result=mysql_query($sql);


if(mysql_num_rows($result) == 1) {
     $_SESSION['username'] = $_POST['username'];
     if ($result == '1'){
      echo "uspeh admine";
     }else{
      echo "uspeh korisnice";
     }

 }else{
    echo "neuspeh";
 }

【问题讨论】:

  • var_dump($result) 产生什么?
  • 它返回:resource(3) of type (mysql result)

标签: php sql database login


【解决方案1】:

$result 是结果的资源。您需要使用mysql_fetch_assoc() 或类似名称。

$row = mysql_fetch_assoc($result);
if ($row['admin'] == '1') {
  echo "uspeh admine";
} else { 
  echo "uspeh korisnice";
}

【讨论】:

    【解决方案2】:

    您需要获取查询结果的数组表示:

    $row = mysql_fetch_assoc($result);
    
    echo $row['some_key_maybe_id'];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-31
      • 2018-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多