无法从PHP中使SQL查询工作


Cannot make an SQL query work from PHP

我想运行一个非常简单的PHP函数:

function evalLoggedUser($db_conx,$id,$e,$p){
$sql = "SELECT ip FROM users WHERE id={$id} AND email= '$e' AND password= '$p' AND activated=1 LIMIT 1 ";
    $query = mysqli_query($db_conx, $sql);
    $numrows = mysqli_num_rows($query);
    if($numrows > 0){
        return true;
    } else {
        echo $sql;
    }
}

作为用户身份验证的一部分。问题是,查询不工作,我不知道为什么!我知道mysql连接正在工作,因为我已经检查了mysqli_errno,没有得到任何东西-有人能帮助吗?

试试这个…

function evalLoggedUser($db_conx,$id,$e,$p){
$sql = "SELECT ip FROM users WHERE id='$id' AND email= '$e' AND password= '$p' AND activated=1 LIMIT 1 ";
    $query = mysqli_query($db_conx, $sql);
    $numrows = mysqli_num_rows($query);
    if($numrows > 0){
        return true;
    } else {
        echo $sql;
    }
}

Values在默认情况下被双引号替换。但是一定要检查一下连接。

$sql = "SELECT ip FROM users WHERE id=$id AND email= $e AND password= $p AND activated=1 LIMIT 1 ";