5

準備されたステートメントでコメントをリストする際に問題があります。何か案は?

これが私のコードです:

$fetchComments = $cnx -> prepare("SELECT comment FROM comments WHERE video_id=? LIMIT 1");
$fetchComments -> bind_param('s', $row['id']);
$fetchComments -> execute();
$fetchComments -> store_result();
$fetchComments -> bind_result($vid_comment);
if ($fetchComments -> num_rows > 0) {
    whike ($row = mysqli_fetch_assoc($vid_comment)){
    echo $row['comment'];
    }
}
4

2 に答える 2

8

[何らかの未知の (そして非常に奇妙な) 理由により] mysqli_stmt オブジェクトで fetch_assoc を使用することはできません。
最初に mysqli_get_result() で mysqli 結果リソースを取得する必要があります。

また、変数には一貫した名前を付けてくださいMysqli ステートメントはあなたのコメントとは何の関係もありません。これは単なる mysqli ステートメント オブジェクトです。

$stmt->execute();
$res = $stmt->get_result(); // here you go
while ($row = mysqli_fetch_assoc($res)) {
    echo $row['comment'];
}

ただし、この関数が mysqli で使用できるかどうかはわかりません。

于 2013-06-10T01:47:41.500 に答える
0

スクリプトにエラーがあります。使用mysqli_fetch_assocしなければならないときに使用していますfetch()。エラーはこちら

while ($row = mysqli_fetch_assoc($vid_comment)){

したがって、代わりに使用する必要があります

while ($fetchComments ->fetch()) {
   echo $vid_comment 
}

ここでドキュメントを確認できます

于 2013-06-09T22:37:15.873 に答える