首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP MySQL预准备语句不工作

PHP MySQL预准备语句不工作
EN

Stack Overflow用户
提问于 2017-05-21 14:37:32
回答 4查看 62关注 0票数 0

我现在很困惑,为什么我用PHP编写的一条语句不能正常工作。

代码如下:

代码语言:javascript
运行
复制
$stmt = $db->prepare('SELECT * FROM mail WHERE userID = ? AND opened = 0');
    if($stmt)
    {
        $stmt->bind_param('s',$_SESSION['id']);
        $stmt->execute();
        $stmt->store_result();

        $msgs = $stmt->num_rows;

        $stmt->close();
    }

    if($msgs > 0)
    {
        $msgs = '<span style="color: yellow;">'.$result->num_rows.'</span>';
    }

    echo ' <a href="mail?id='.$_SESSION['id'].'"><img src="img/'.$mailico.'" alt="'.$mailstat.'" /> ('.$msgs.')</a>';

基本上,它应该检查数据库中的表" mail“,并查看是否有任何PM已发送给登录的用户,尚未打开,如果是,则在邮件图标旁边的括号中显示用户有多少新消息。

问题是,当我在表中为该用户打开一个未打开的消息时,它不会用消息的数量更新新的消息字段,并且是空白的(根本没有数字)。

我用mysqli_error($db)检查了mysql错误;但是什么也没有返回。

我错过了什么,还是它恨我?

EN

Stack Overflow用户

发布于 2017-05-21 14:45:27

php日志中是否有错误?我认为这个问题可能是因为直接使用了$_SESSION['id'] --首先尝试将其创建为一个变量,如下所示

代码语言:javascript
运行
复制
$id=$_SESSION['id'];
$stmt->bind_param('s',$id);
票数 0
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44093897

复制
相关文章

相似问题

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