php - 虽然循环 PHP get_result 不工作

标签 php mysql loops while-loop

我正在尝试使用 MySQl 准备语句从数据库中获取行并获取结果。但是,这是行不通的。

有人能看出我错在哪里吗?我已经尝试了几个小时的解决方案,但我无法让它工作。页面只是没有加载,就好像查询失败了一样。

 $tag = trim($_GET['tag']);

 $stmt = $mysqli->prepare('SELECT posts.* FROM tags JOIN posts ON posts.id = tags.post_id WHERE tag = ?');
 $stmt->bind_param('s', $tag);
 $stmt->execute();
 $stmt->store_result();
 $result = $stmt->get_result();

 while ($row = $result->fetch_assoc()) {

     echo $row['tag'];

 }      

 $stmt->free_result();
 $stmt->close();

最佳答案

试试这个:

$stmt = $mysqli->prepare('SELECT posts.id FROM tags JOIN posts ON posts.id = tags.post_id WHERE tag = ?');

...

$stmt->bind_result($id);    

while ($stmt->fetch()) {

    // var_dump entire row to ensure the key you expect is avail
    var_dump($id);

}

更新

如果您想选择 *,而不是必须单独指定每一列,请查看此 post (不是接受的答案,而是得分最高的答案)。否则我强烈建议您查看PDO ,因为它使这些基本的读取操作变得更加容易。

关于php - 虽然循环 PHP get_result 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26197031/

相关文章:

jquery - 如何在元素内查找数组值并向其添加 jquery 类

php - mysqli 查询搜索整个数据库

mysql - 谷歌云 SQL 时间序列统计

php - 如何从数据库查询创建多维数组

delphi - 在Delphi中使用变量作为对象名称

python - 检查变量在众多列表中的哪个列表中的干净方法

php - 如何清理 MySQL 的字符串

javascript - 当我在一个页面中有多个表单时,如何在单击提交按钮后获取特定表单的控件

php - 显示列表中状态为 "user"或 "admin"的所有用户

mysql - 如何将此 MySQL 命令转换为 SQLite 命令?