【发布时间】:2012-08-08 13:13:37
【问题描述】:
我想显示表格中的行,但它不起作用,它不回显任何内容。
$query = "SELECT * FROM table ORDER BY date DESC LIMIT ?, 10";
$stmt = $mysqli->stmt_init();
if ($stmt->prepare($query)) {
$stmt->bind_param("i", $row_start);
$stmt->execute();
$stmt->bind_result($result);
$stmt->fetch();
$stmt->close();
}
while($row = mysqli_fetch_array( $result )) {
echo $row['title'];
}
我有旧 mysql ext 的代码,它可以工作。尝试使用 mysqli 获得相同的结果。
【问题讨论】:
-
可笑的是,
fetch_array()不适用于准备好的语句。您使用了bind_result(),这使得整个过程变得更加笨拙。这是我尽可能使用 PDO 而不是 MySQLi 的主要原因之一。 -
@DaveRandom 我认为 MySQLi 是原始 ext 的改进版本...不知道有这样的限制。我想我必须搬到 PDO。
标签: php arrays mysqli prepared-statement