phpからMySQLのデータを表示してみる

何か作ってみよう

基本的なことを紹介したホームページはたくさんあるので
いきなりアプリを製作しようと思います。
必要になったことは、随時追加していきます。
とはいえ、なんとなく基礎的なところはおさえておきたいので
軽くさわって見ます。

環境:
Linux(Plamo)
Apache1.3.33
MySQL1.4.8
php5.0.3
Smarty2.6.6

phpからMySQLのデータを表示してみる

phpでは、htmlにプログラムを埋め込みます。(埋め込まなくてもいいようですが...)
プログラムの開始と終了は <?php で始まり ?> で閉じます。
データベースへの接続は、mysql_connect関数を使用します。
それでは、最初にMySQLのuserテーブルを表示してみます。

<html>
<head>
<title>Sample</title>
</head>
<body>
<?php
$cn = mysql_connect("localhost","root","パスワード");
if(!$cn){
    die("db connect Error");
}
if(!(mysql_select_db("mysql"))){
    die("db select error");
}
$sql = "SELECT USER,HOST FROM user";
$dyn = mysql_query($sql);
if(!$dyn){
    die("query error");
}
while($row = mysql_fetch_array($dyn)){
   echo $row['USER'] . " : ";
   echo $row['HOST'] . "<br>";
}
mysql_close($cn);
?>
</body>
</html>

mysql_connectでMySQLへ接続
mysql_select_dbで対象となるデータベースの選択
mysql_queryでSQL文を投げて結果IDを取得
mysql_fetch_arrayで配列として行を取得
1行づつ取得して最終行までループします。
mysql_closeでMySQLとの接続を終了します。

MySQLでは、データベース名,テーブル名は大文字小文字を区別しています。

ブラウザで接続してuser名とhost名が表示されれば成功です。

参考

プログラムの開始と終了は、<?php で始まり ?> で閉じる。
文字列の結合は . (ドット)で行う。
if文はC(C++)やJAVAなどと同じ。

データベース:
resource mysql_connect([string server [, string username [, string password [, bool new_link [, int client_flags]]]]])
int mysql_select_db ( string database_name, int [link_identifier])
int mysql_query ( string query, int [link_identifier])
array mysql_fetch_array ( resource result, int [result_type])