1

テーブルの行を表示したいのですが、機能せず、何もエコーされません。

$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'];
}

私は古いmysqlextのコードを持っていて、それは機能します。mysqliで同じ結果を得ようとしています。

4

1 に答える 1

0

以下のリンクをお読みください:-

Mysqli の抽象化、準備済みステートメントからの配列のフェッチ

call_user_func_array(...) 関数は、配列の各要素をメソッド引数として提供したかのように、指定された配列を使用して $query オブジェクトの bindParam または bind_result メソッドを呼び出すだけです。

以下のコードを使用して、問題が発生している SQL ステートメントを確認することをお勧めします。元のコードは抽象化レイヤーのステートメント クラスに依存するため、完全にテストできるように少し書き直しました。

于 2012-08-08T13:40:15.313 に答える