前提条件
MySQLのデータベース、テーブルをあらかじめ用意しておく
PHPMyadminが開ける
出力させたいWebページに書く内容
データベースに接続する
接続するためにPDOというクラスがPHPに用意されているので、インスタンス化して接続に必要な情報を引数に渡す。
<?php
$pdo = new PDO("mysql:host=接続先のサーバのアドレス;dbname=データベース名;charset=utf8", "ユーザ名", "パスワード");
?>
デフォだとユーザ名はroot
, パスワードは""
と空でも繋がる。
データベースからデータを取得する
データを取得するためのSQL文を変数sqlにセット。
さっき作ったインスタンスが入っているpdoに、SQL文を渡す。
最後にexecute()で、変数stmtを実行。
<?php
$sql = "SELECT * FROM テーブル名 ORDER BY update_at";
$stmt = $pdo->prepare($sql);
$stmt -> execute();
?>
print_rで取得したデータを表示してみる
変数rowにfetchで1行ずつデータを取り出して入れておく。
PDO::FETCH_ASSOCをfetchの引数にすると、カラム名を添字にした配列にすることができる。
print_rで配列を出力して改行している。
…というのを、while文であるだけぐるぐる出力している。
<?php
while ($row = $stmt -> fetch(PDO::FETCH_ASSOC )) {
print_r($row);
echo("<br/>");
}
?>
連想配列を使って、欲しいとこにデータを埋め込んでいく
さっきはprint_rで一気にキーと値が表示されていたので、これを連想配列の書き方を使って必要なとこに必要な情報を埋め込んでいく。
例えばこんな感じ。
<table>
<tr>
<th>id:<?php $row[id]; ?></th>
<th>投稿内容: <?php $row[content]; ?></th>
</tr>
</table>