4

ループ内でPDOを使用してbindParam()を使用して準備されたクエリを実行する際に問題が発生しました。基本的に私がやろうとしているのは、配列をループし、各配列要素でデータベースからデータを返すことです。-> bindParam()が変数をクエリにバインドすることになっていることに気付きましたが、これは配列でどのように機能しますか?私はそれを動かすことができないように見えるので:S

これまでの私のコードは次のとおりです。

<?php
    $i = 0;
    $statement = $conn->prepare("SELECT * FROM users WHERE id = :id");
    $statement->bindParam(":id", $friendListIDs[$i], PDO::PARAM_STR);
    $friendListIDs = explode($details['friends'], " ");
    while($i <= count($friendListIDs))
    {
          $statement->execute();
          $row = $statement->fetch();
          echo "<img src='../img/friend_icon.png' alt='' align='left' />
                <span>
                <a href='#'>".$row['firstname']." ".$row['surname']."</a>
                <br />
                <a href='#'>100% wishes fulfilled</a>
                </span><br /><br />";
                $i++;
    }   
?>
4

1 に答える 1

2

使用するのではなく、次のようbindParamに配列パラメータを追加できます。$statement->execute

$statement->execute(array(":id"=>$friendListIDs[$i]));
于 2012-07-27T00:53:56.053 に答える