<html><head>
<meta http-equiv="Content-type" content="text/html;charset=Shift_JIS">
<title>支店テーブル検索 Firebird版</title></head>
<body bgcolor="white">
<h1>支店テーブルを検索するサンプル(Firebird版)</h1>
<?php
function putError($msg){
$url = $_SERVER[REQUEST_URI];
print <<<MSG
<h2>おおっと</h2>
$msg<br>
<a href="$url">検索条件入力に戻る</a><br>
</body></html>
MSG;
exit(0);
}
if(isset($_POST["shiten_name"])){
if(empty($_POST["shiten_name"])){
putError("検索する支店名を入力して下さい。");
}
/* データベースに接続します。*/
if(($con = ibase_connect(
"localhost:/usr/dbms/fb/udb.gdb", "urano", "urano399", "SJIS_0208")) == 0){
putError("データベースに接続できません:" . ibase_errmsg());
}
/* SQLを実行します。*/
/* MySQLでは、表の名前の大文字、小文字は区別されるので、
* 正確に指定する必要があります。
*/
$k = $_POST["shiten_name"] . "%";
$sql = <<<SQL
SELECT SHITEN_CODE, SHITEN_NAME, EMPLOYEE_NUM
FROM SHITEN
WHERE SHITEN_NAME LIKE '$k'
SQL;
if(! ($rset = ibase_query($con, $sql))){
putError("実行に失敗しました:" . ibase_errmsg());
return;
}
/* 結果を取り出します。 */
$ncols = ibase_num_fields($rset);
print <<<HEADER
<table border="1">
<tr bgcolor="#ffc0c0">
<th>支店コード</th><th>支店名称</th><th>従業員数</th></tr>
HEADER;
while($a = ibase_fetch_row($rset)){
print "<tr>";
for($c=0; $c < $ncols; $c++){
print "<td>" . $a[$c] . "</td>";
}
print "</tr>";
}
print "</table>";
/* 結果集合を開放します。 */
ibase_free_result($rset);
/* データベース接続を終了します。 */
ibase_close($con);
}
else{
?>
<form action="<?= $_SERVER[REQUEST_URI] ?>" method="POST">
支店名:
<input type="text" name="shiten_name"><br>
<input type="submit" value="検索">
</form>
<?php
}
?>
</body></html>
|