我一直在做一件朋友问我的事情。他使用ezsql进行查询,而我对它还很陌生。尽管我在同一个项目中使用了它。
下面是数据库列和数据,以便清楚地查看

以及失败的代码部分:
$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。结果如下:

当它在注册过程中工作时,为什么它不能在这里工作?
提前谢谢。
发布于 2012-02-09 03:26:00
我找到问题了。上面有两个错误。
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;
}https://stackoverflow.com/questions/9157620
复制相似问题