「odbc_fetch_row関数」の第2引数を指定して特定のレコード番号だけを読み出す方法の応用例です。
第2引数に与える数値をランダムに設定することによって、毎回異なるレコードを取り出すことができます。もし画像の情報やリンク先アドレスなどが保存されているテーブルに適用すれば、広告バナーのランダム表示のようなことができます。
<?php
$DSN = "AccessPHP"; //データソース名
$DBUSER = ""; //ログインユーザー名
$DBPASSWORD = ""; //パスワード
//Accessデータベースに接続
if (! $con = odbc_connect($DSN, $DBUSER, $DBPASSWORD)) {
exit("Accessデータベースに接続できませんでした!");
}
//仕入先テーブルから全レコードを読み込むSQLを組み立て
$sql = "SELECT * FROM 仕入先";
//結果セットを取得
$rst = odbc_exec($con, $sql);
//乱数ジェネレータを初期化
srand(microtime() * 1000000);
//1~20の範囲の乱数を生成
$recno = rand(1, 20);
//ランダムな1レコードを読み込み
odbc_fetch_row($rst, $recno);
print $recno . " 番目のレコードを読み込みました<BR><BR>";
print odbc_result($rst, "仕入先コード") . "<BR>";
print odbc_result($rst, "仕入先名") . "<BR>";
print odbc_result($rst, "担当者名") . "<BR>";
//ODBCとの接続を解除
odbc_close($con);
?>
以下の図では、同じページを3回再読み込みしたあとの結果を表示しています。


 |