【PHP,MySQL】最も簡単なDB接続の例

【サンプル】
実演 : http://tw-hashtag.sakura.ne.jp/sample/phpSearch/index.php
DL : http://tw-hashtag.sakura.ne.jp/sample/phpSearch/phpSearch.zip

ソースコード
【テーブル構造】


CREATE TABLE `tbl_01` (
`id` int(11),
`name` text,
`explain` text,
PRIMARY KEY (`id`)
);

INSERT INTO `tbl_01` (`id`, `name`, `explain`) VALUES
(1, '山田', '明るく陽気な人'),
(2, '佐藤', '暗くて卑屈な人'),
(3, '吉田', '何考えてるか分からない人'),
(4, '遠藤', 'みんなを驚かせて楽しんでる人'),
(5, '大野', '完全無欠の優等生');


【index.php




<?php
$db = mysql_connect('localhost', 'root');
mysql_query('SET NAMES utf8',$db); //クエリの文字コードを設定
mysql_select_db('test', $db);

//検索用SQLを作成
if(isset($_GET['search'])){
//検索語が指定されている場合
$search = mysql_real_escape_string($_GET['search']);
$value = $_GET['search'];
}else{
//検索語なし。全件取得。
$search = '';
$value = '';
}
$query = "SELECT id, name FROM tbl_01 WHERE name LIKE '%$search%'";


//一覧表のためのデータを取得
$result = mysql_query($query, $db);

//<li>で1行ずつ表示
?>
<form action="" method="get">
<input type="text" name="search" value="<?php echo $value ?>">
<input type="submit" value="検索">
</form>
<ul>
<?php while($row = mysql_fetch_array($result, MYSQL_ASSOC)){ ?>
<li>
<a href="view.php?id=<?php echo $row['id'] ?>">
<?php echo $row['name'] ?>
</a>
</li>
<?php } ?>
</ul>

<? mysql_close($db) ?>


【view.php


<?php
if(!isset($_GET['id']) || !is_numeric($_GET['id'])) exit;

$db = mysql_connect('localhost', 'root', '');
mysql_query('SET NAMES utf8',$db); //クエリの文字コードを設定

//1件のデータを取得
$query = "SELECT * FROM tbl_01 WHERE id = {$_GET['id']}";
mysql_select_db('test', $db);
$result = mysql_query($query, $db);

//<li>で1項目ずつ表示
?>
<ul>
<?php while($row = mysql_fetch_array($result, MYSQL_ASSOC)){ ?>
<li><?php echo $row['id'] ?></li>
<li><?php echo $row['name'] ?></li>
<li><?php echo $row['explain'] ?></li>
<?php } ?>
</ul>

<? mysql_close($db) ?>