#!/usr/local/bin/perl
#データベース用ライブラリ(標準)
#この例ではサーバーに導入済みだが…
use DBI;
#フォームデコード用ライブラリ
#ダウンロード先↓
#http://www.bio.cam.ac.uk/cgi-lib/
require './cgi-lib.pl';
#当スクリプト
$script_file = "db-basic.cgi";
#スクリプトタイトル
$title = "出たデータ(perl)";
#データベース接続用変数
# データソース
$dsn = '<- データソース ->';
# ユーザ名
$user = '<- ユーザ名 ->';
# パスワード
$password = '<- パスワード ->';
#cgi-lib.plの関数。これを呼び出すとフォームの内容が%inに格納される
&ReadParse;
#connectはデータベース接続するためのメソッド
#接続すると、ハンドルを返すのでそれを使ってデータベースを操作します
$ret = eval{ $dbh = DBI->connect($dsn, $user, $password) };
if (!$ret ) {
&error('接続エラー','接続エラーが発生しました');
exit();
}else{
#print "接続しました
\n";
#フォームなどの内容から処理を切り替えます。
if ($in{'mode'} eq "search"){
#検索結果
}elsif($in{'mode'} eq "data"){
#内容詳細
}else{
#初期ページ表示
&printdata();
}
$dbh->disconnect;
}
###########################################################
#データ表示
sub printdata {
&head;
print "テーブルからデータ所得
\n";
# prepareが成功した場合、ステートメントハンドルが返されます
#このハンドルを使いSQLを実行します。
my $sth = $main::dbh->prepare("SELECT * FROM `user`");
# SQL文の実行
$sth->execute;
# データの取得と出力
$count_rec = 0;
while(@row = $sth->fetchrow_array) {
$count_rec++;
#データを処理します
#print "@row
\n";
}
#代表的なデータベース関数
#connect : データベースと接続する
#disconnect : データベースとの接続を切る
#prepare : SQL文を設定
#execute : 設定されたSQL文を実行
#do : SQL文の設定・実行
#fetch : フィールドの配列参照として次の行を取り出す
#fetchrow_array : フィールドの配列として次の行を取り出す
#fetchrow_hashref : ハッシュテーブルへの参照として次の行を取り出す
print "