用户激活查询if

时间:2017-02-23 09:10:11

标签: php

大家好,我有问题,如果有条件,这里是一个查询和脚本:

$sql_admin = "SELECT * 
                FROM users 
                WHERE username='$username' 
                AND hashed_password='$pass_admin' 
                AND lvl = 1 LIMIT 1";
$query_admin = mysqli_query($connection, $sql_admin);
$row_admin = mysqli_fetch_array($query_admin);
$id_admin           = $row_admin['id'];
$db_password_admin  = $row_admin['hashed_password'];
$lvl_admin          = $row_admin['lvl'];
$active_admin       = $row['active'];

if($pass_admin == $db_password_admin && $active_admin == 1) {
    $_SESSION['id'] = $id_admin;
    redirect_to("admin");
} elseif($pass_admin == $db_password_admin && $active_admin == 0) {
    echo '<script language="javascript">';
    echo 'alert("Your acc is not activated.");';
    echo 'window.location.href="index";';
    echo '</script>';
} else {
    // something other
}

当我尝试只使用$ pass_admin == $ db_password_admin时,但是当我添加时(&amp;&amp;&amp; $ active_admin == 0/1它无效。

感谢您的回答。

1 个答案:

答案 0 :(得分:2)

发生错误的原因是您在使用$active_admin = $row['active'];时使用$row_admin,因此请将行更改为

$active_admin = $row_admin['active'];

$row永远不会启动,但您使用$row_admin从查询中获取数据