PDOでデータを取得する(query/prepareメソッド)

PHP

queryメソッドとは

PDOでMySQLに接続するでデータベースに接続後、データベースにSQL文を発行してデータを取得します。
最もシンプルにSQL文に変数を割り当てないときに使うqueryメソッドを利用します。

POSTやGET等で取得した値で動的に処理せずに、固定の一覧ページなど単に新しい順にデータベースからデータを取得する際などに発行します。

参考:PDO::query

queryメソッドを実行する

$rows = $dbh->query('SELECT * FROM items');
while ($row = $rows->fetch()) {
echo $row['name'];
}

queryメソッドでitemsテーブルからすべてのデータを取り出し、while文で個々のデータをループ処理していきます。

prepareメソッドとは

参考:PDO::prepare

prepareメソッドを実行する

$item_id = $_GET['item_id'];
$rows = $dbh->prepare('SELECT * FROM items WHERE item_id=?');
$rows->execute(array($item_id));
$row = $rows->fetch();
echo $row['name'];

値が複数の場合は以下のように処理します。

$rows = $dbh->prepare('SELECT * FROM items WHERE item_id=? AND item_price=?');
$rows->execute(array($item_id, $item_price));

コメント