为什么ezSQL返回空结果集

时间:2012-02-06 08:53:39

标签: php mysql ezsql

我一直在研究朋友问我的事情。他正在使用ezsql进行查询,而且我对它很新。虽然我在同一个项目中使用它。

这是数据库列和数据清楚地看到它 enter image description here

代码失败的部分:

    $customsql = new ezSQL_mysql();
    $customsql->query("SET NAMES 'utf8'"); 
    $customsql->query("SELECT * FROM uyeler WHERE email='".escape($_POST['eposta'])."' AND sifre='".escape($_POST['sifre'])."'");
    if($customsql->num_rows>0){
        if($customsql->onay=='1'){
            //Things to do if user is activated.
        }else{
            $hata='Onay:'.$customsql->onay.' -Error: Bu eposta adresiyle kayıtlı onaylanmamış bir kullanıcı var. Lütfen epostanızı onaylayın.';
            $_SESSION['loggedin']=FALSE;
        }

“onay”是数据库中的varchar。 这是结果: enter image description here

虽然它正在注册过程中,为什么它不能在这里工作?

提前致谢。

1 个答案:

答案 0 :(得分:1)

我发现了问题。上面有两个错误。

1-将查询结果分配给变量。

如果您希望查询中有多行,请

2-“get_results”。 (如果你只需要一行,则为“get_row”;如果只查询一列而不是*,则为“get_var”)

以下是您应该如何使用以下结果的查询:

$customsql = new ezSQL_mysql();
$customsql->query("SET NAMES 'utf8'"); 
$yourvariable=$customsql->get_row("SELECT * FROM uyeler WHERE email='".escape($_POST['eposta'])."' AND sifre='".escape($_POST['sifre'])."'");
if($customsql->num_rows>0){
    if($yourvariable->onay=='1'){
        //Things to do if user is activated.
    }else{
        $hata='Onay:'.$customsql->onay.' -Error: Bu eposta adresiyle kayıtlı onaylanmamış bir kullanıcı var. Lütfen epostanızı onaylayın.';
        $_SESSION['loggedin']=FALSE;
    }