読者です 読者をやめる 読者になる 読者になる

感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

PHPでデータベースから値を取得して、その値を選択リストとして動的に生成するサンプル

PHP
<スポンサーリンク>

タイトルの通りだけど、サンプルの完成像となる画面はこんな感じ。
f:id:sho322:20131124173438p:plain

出席簿のようなテーブルを作って、それに人の名前を登録する。
それで、その値をPHPから取得して、選択リストとして表示するサンプルを作る。

まずは、テーブルを作ってみよう。

CREATE TABLE member
(
  id INT(10),
  name VARCHAR(100),
  salary INT(100)
);

名前と給料をを入力するテーブルだ。
中に適当にデータを挿入する。

INSERT INTO member
(id, name, salary)
VALUES
(1,'John', 30);

INSERT INTO member
(id, name, salary)
VALUES
(2,'Andy', 25);

INSERT INTO member
(id, name, salary)
VALUES
(3,'Mita',25);

で、こいつの値をPHPで取得して、ブラウザにoptionの選択リストとして表示するPHPプログラムはこんな感じ(ただのサンプルで、再利用とか考えてない)

<!DOCTYPE html>
<head>
<meta charset="utf-8">
<title>DBの値から選択リストを作る</title>
</head>
<body>
<?php

$server = "localhost";
$dbname = "testdb";
$user = "root";
$pass = "1234";

$con = mysql_connect($server, $user, $pass) or die("接続エラーが発生しました");
mysql_select_db($dbname) or die("接続エラーが発生しました");

$sql = "SELECT name FROM member";

$res = mysql_query($sql, $con) or die("データをセレクトするときにエラーが発生しました");

echo '<select name="name">';
while($row = mysql_fetch_array($res, MYSQL_ASSOC)) {
	echo "<option value=\""  . $row["name"] . "\">" . $row["name"] . "</option>";
}

echo '</select>';


mysql_close($con);

?>
</body>
</html>

こんな感じで、PHPでDBから値を取得するサンプルと、それをちょろっと加工して使うサンプルを作った。
繰り返すが、ただのサンプルで、再利用とか全然考えてないので、そこは注意が必要。

読んだ本

PHPによるWebアプリケーションスーパーサンプル活用編 第2版

PHPによるWebアプリケーションスーパーサンプル活用編 第2版

サンプルの量が豊富。
ちょこちょこ使えそうなものを真似して色々といじってみる。