FC2ブログ

PHP でDBのデータの表示

PHP でDBのデータの表示

#02 データを全件表示してみよう
http://dotinstall.com/lessons/basic_php_advanced/6902
を参考に
DBアクセスして、テーブル内のデータ全件表示方法を学習
そして、レコード件数の表示についても学習

今回は処理について

sql 文は、PHPの場合変数へ格納することができる
$sql ="select * from users";

そして、この変数に格納したSQLを実行するには
query()
を使う

この query() で実行された結果も
PHPなら変数へ格納することが可能

$stmt =$dbh->query($sql);

ちなみに、$dbh は
接続するDB情報が格納されている変数で
$dbh = new PDO('mysql:host=localhost;dbname=blog_app','dbuser001','dbpwd0001');
となっている

この変数に格納されたSQL実行結果の取りだしには
fetchAll() を使う

今回は
$stmt に格納されているので

$stmt->fetchAll(PDO::FETCH_ASSOC)
というようにする

これを foreach() でまわしながら取得する
foreach($stmt-?fetchAll(PDO::FETCH_ASSOC) as $user){
var_dump($user['name']);
}

これは
$stmt->fetchAll(PDO::FETCH_ASSOC)
の中身を
$user に1つずつとりだして代入している

var_dump() のところの
$user は、いわばDBの内容になる
そして、
$user['name']

name は
DB の users にある name の部分ということ

これを追記して
結果が
string(7) "taguchi" string(6) "tanaka" success!
というようになれば成功

おなじになっているのか確かめるには
mysql -u root -p
でログインして
use blog_app;
select * from users;
を実行して、この結果とおなじか確かめることができる

次に、件数の表示

これは
まずは、query() の中に件数を表示するSQLを記述

$dbh->query("select count(*) from users")
そして、この結果を
fetchColumn() で取得
これで件数がわかるので
echo で出力すればOK
あとは、わかりやすいように

PHP では . で javascript の + みたいに文字をつなげられるので
. "records found"
というように文字をつなげる

これらをソースにすると

echo $dbh->query("select count(*) from users")->fetchColumn() . "records found";
というようになる

これで
2records found
と表示される
スポンサーサイト



テーマ : プログラミング
ジャンル : コンピュータ

コメント

非公開コメント

最新記事
検索フォーム
GREEハコニワ攻略サイト
リンク
カテゴリ
月別アーカイブ
フリーエリア
最新記事
FXプライムレート
最新コメント
最新トラックバック