php - PreparedStatement fetch_assoc() 不返回任何内容
问题描述
我正在尝试使用 PreparedStatements 和 fetch_assoc() 获取 x 数量的数据数组。它不返回任何东西。这是代码:
if(isset($query_published) && isset($query_date) && isset($query_sort) && isset($query_rows)){
//Does meet the requirements
$stmt = $db -> prepare("SELECT source, title, timeadded, tags, filed, added, priority, timepublished
FROM news_archive WHERE ? AND ? ORDER BY ? LIMIT ?");
$stmt -> bind_param('sssi', $query_date, $query_published, $query_sort, $query_rows);
//is valid, It's String, String, String, and an Integer.
$stmt -> execute();
$result = $stmt -> get_result();
while($row = $result -> fetch_assoc()){
//Doesn't run this loop at all.
$return .= "<tr>";
$return .= "<td>" . $row["source"] . "</td>";
$return .= "<td>" . $row["title"] . "</td>";
$return .= "<td>" . $row["timeadded"] . "</td>";
$return .= "<td>" . $row["timepublished"] . "</td>";
$return .= "<td>" . $row["filed"] . "</td>";
$return .= "</tr>";
}
$db -> close();
}
我已经验证这不是 MySQL 问题,因为我可以正常运行常规查询。我尝试打印出$query_date, $query_published, $query_sort, $query_rows
执行前等参数,它们是合法值。
查询也很好。我用参数填充了问号,并在 MySQL 上运行它,这是一个有效的查询。
解决方案
推荐阅读
- c++ - c++ 文字数组表示法
- python - 执行 python 项目中的脚本时,如何向 $PYTHONPATH 或 $PATH 变量添加路径?
- pine-script - Tradingview Backtesting:交易列表在开盘时列出进入/退出。我如何让它在不同的点显示进入/退出?
- python - 返回给定等级和学生 GPA 的字母等级
- r - R for 在全局环境中对对象进行循环以对一个变量进行子集化
- c# - 尝试使用 C# 转换游戏对象统一的位置
- mysql - SQL 错误:1364 - 字段“描述”没有默认值
- email - Bluehost 将来自我域的电子邮件标记为欺骗 - 如何修复?
- json - Json 模式验证显示没有错误
- r - 打印数据表中选定单元格的值