#! /usr/bin/perl #--------------------------------------------------------------------- # - プログラム名 データベース・データ表示 # - バージョン 0.1 # - 公開/更新日 2011.8.1 # - ファイル名 DspDB_Sample.cgi #--------------------------------------------------------------------- # このCGIはブログ掲載用にサンプルとして作成たものです。 #--------------------------------------------------------------------- # #use CGI::Carp qw/fatalsToBrowser/; use CGI; use DBI; use Encode qw(from_to); #--- 変数 --- my $DatabaseName='hogeDB'; my $DatabaseHost='mysql9999.db.sakura.ne.jp'; my $DatabaseAccount='hogeUser'; my $DatabasePasswd='hogePasswd'; my $DBOpen='close'; my $strSQL=''; my $sth=''; my $key=''; my $value=''; my $i=0; my @ErrMSG=(); my @item=(); my $result=''; #--- データベース接続 --- my $dsn="DBI:mysql:".$DatabaseName.":".$DatabaseHost; my $db = DBI->connect($dsn, $DatabaseAccount, $DatabasePasswd, { RaiseError => 1, AutoCommit => 0 }); if(! $db){ push(@ErrMsg,"Not Connected Database"); }else{ $DBOpen='open'; } if(@ErrMsg == 0) { #--- キャラクターセットの通知 -- $strSQL = "set names utf8"; $sth = $db->prepare($strSQL); $sth->execute; #--- 読み取りSQL --- $strSQL = 'SELECT* FROM `myblogsamp` WHERE Sumi!=1 LIMIT 1'; $sth = $db->prepare($strSQL); $sth->execute; @item = $sth->fetchrow_array; #--- 結果整形 --- for($i=0; $i<$sth->{NUM_OF_FIELDS}; $i++) { #--項目名・値の取得とSJIS化 $key=$sth->{NAME}->[$i]; from_to($key, 'utf8', 'cp932'); $value=$item[$i]; from_to($value, 'utf8', 'cp932'); #--整形 $result.=$key."=".$value."<>"; } #--- データベース終了する if($DBOpen eq 'open') { $db->disconnect; } }else{ $result=@Error; } #--- 結果表示 -- print "Content-type: text/html; charset=Shift-Jis\n\n"; print $result; exit;