首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果包含查询为空

问如果包含查询为空
EN

Stack Overflow用户
提问于 2014-01-22 02:03:14
回答 2查看 33关注 0票数 1

我一直在我的页面中执行一个查询--比如说,page.php --在其中运行一个简单的查询。

伪码:

代码语言:javascript
复制
$request_unavailble = mysqli_query($mysqli, "SELECT * FROM my_table WHERE availble='0'");

当在page.php内部执行此操作时,我将所有可用的结果设置为0。但是,如果在单独包含的文件中运行此操作,则数据返回为空。实际上,当包含时,mysqli_num_rows返回0。

出什么问题了,这里?

编辑

以下函数被添加为包含(既作为函数,也作为单独的函数)

代码语言:javascript
复制
function compte_messagerie()
{
    $requetes_messagerie = mysqli_query($mysqli, "SELECT * FROM ".DB_PREFIX."messagerie WHERE lu='0'");
    if(mysqli_num_rows($requetes_messagerie) == 0)
    {
        echo '<a id="messagerie" href="messagerie">'.AUCUN_NOUVEAU."</a>";
    }
    else if(mysqli_num_rows($requetes_messagerie) == 1)
    {
        echo '<a id="messagerie" href="messagerie">';
        echo '<span>'.mysqli_num_rows($requetes_messagerie)."</span> ";
        echo MESSAGES_SINGULIER."</a>";
    }
    else
    {
        echo '<a id="messagerie" href="messagerie">';
        echo '<span>'.mysqli_num_rows($requetes_messagerie)."</span> ";
        echo MESSAGES_PLURIEL."</a>";
    }
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-01-22 02:36:42

当将查询移植到函数时,$mysqli中的$mysqli连接对象超出了作用域,因此在函数中无效。启用display_errors后,我希望您看到以下错误:

注意:未定义变量$mysqli 警告: mysqli_query()期望参数1是资源,空给定

最干净的解决方案是将$mysqli作为参数传递到函数中,使其可用于函数的作用域

代码语言:javascript
复制
// Expect the MySQLi resource as a parameter...
function compte_messagerie($mysqli)
{
    $requetes_messagerie = mysqli_query($mysqli, "SELECT * FROM ".DB_PREFIX."messagerie WHERE lu='0'");
    if(mysqli_num_rows($requetes_messagerie) == 0)
    {
        echo '<a id="messagerie" href="messagerie">'.AUCUN_NOUVEAU."</a>";
    }
    // etc.....
}
票数 1
EN

Stack Overflow用户

发布于 2014-01-22 02:12:11

尝尝这个。请检查可用表是否需要字符串值或整数。

代码语言:javascript
复制
$request_unavailble = mysqli_query("SELECT * FROM my_table WHERE availble= 0 ");

while($rows = mysqli_fetch_assoc($request_unavailble)){ // <- this will check if there some data fetch

  // You put some code here
  }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21272796

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档