[作成]の検索結果
PerlのプログラムからDBI経由でMySQLに接続し、SELECT文でデータを取得する処理のサンプルプログラムです。
あらかじめphpMyAdminを使用してMySQLにテータベース「testdb」を作成し、以下のSQLを実行しテーブル「users」を作成、3件のレコードを登録しておきます。
CREATE TABLE `users` ( `userid` varchar(100) COLLATE utf8_bin NOT NULL, `password` varchar(250) COLLATE utf8_bin NOT NULL, `status` int(11) NOT NULL, `auth` int(11) NOT NULL, `username` varchar(250) COLLATE utf8_bin NOT NULL, `address` varchar(250) COLLATE utf8_bin NOT NULL, `mailaddr` varchar(100) COLLATE utf8_bin NOT NULL, `hpurl` varchar(250) COLLATE utf8_bin NOT NULL, `widgets` text COLLATE utf8_bin NOT NULL, `createdate` datetime NOT NULL, `lastupdate` datetime NOT NULL, PRIMARY KEY (`userid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin; insert into `users` (`userid`,`password`,`status`,`auth`, `username`,`address`,`mailaddr`,`hpurl`,`widgets`, `createdate`,`lastupdate`) values('admin','1234','1','0','webmaster','', webmaster100@59log.com','http://59log.com/','',now(),now()); insert into `users` (`userid`,`password`,`status`,`auth`, `username`,`address`,`mailaddr`,`hpurl`,`widgets`, `createdate`,`lastupdate`) values('test1','5678','1','1','user 1','', 'test1@59log.com','http://59log.com/','',now(),now()); insert into `users` (`userid`,`password`,`status`,`auth`, `username`,`address`,`mailaddr`,`hpurl`,`widgets`, `createdate`,`lastupdate`) values('test2','abcd','1','1','user 2','', 'test2@59log.com','http://59log.com/','',now(),now());
以下のPerlプログラムでは、テーブル「users」からステータスが1のレコードを全て取得、一旦配列に格納してから標準出力に出力しています。
検索条件の設定にはプレースホルダを使用し、DB処理でエラーが発生した場合は、例外処理に飛んでエラーの内容が出力されるように、RaiseErrorに1を設定しています。
--- mysql_select.pl ---
#!/usr/bin/perl use strict; use warnings; use DBI; my $data_source = "DBI:mysql:testdb"; # 接続先はtestdb my $username = "test"; # データベースへのアクセス権限を持つユーザーを指定 my $password = "abcd"; # そのパスワード my $status = 1; my @recs = (); eval { my $dbh = DBI->connect($data_source, $username, $password, {RaiseError => 1, PrintError => 0}); my $sql = "select * from users where status = ?"; my $sth = $dbh->prepare($sql); $sth->execute($status); while (my @rec = $sth->fetchrow_array) { push @recs, [@rec]; } $sth->finish; $dbh->disconnect; }; if ($@) { print "Error : $@\n"; } foreach my $rec (@recs) { print join(",", @{$rec}), "\n"; }
<TMPL_LOOP>タグはセクションを区切り、名前をつけることができます。この名前つきループの内側に<TMPL_VAR>タグを置き、プログラムでパラメータに代入するハッシュ・リファレンスの param() にリスト(配列リファレンス)を渡すと、リスト分の出力が繰り返されます。
以下は、<TMPL_LOOP>タグの使い方を示すサンプルプログラムです。サンプルプログラムでは、コンマで区切られたデータファイルを読み込んでリストを作成し、それをパラメータに渡してテーブルを表示しています。また、<TMPL_IF>タグ、<TMPL_ELSE>タグを使用してデータがない場合は、テーブルが出力されないようにしています。
--- データファイル(userdata.txt)
kagahiro,kitaakita,kagahiro3@59log.com,011678901 admin,tokyo,webmaster10@59log.com,011778901 buzei,kawasaki,support2@59bbs.org,041758901
--- テンプレートファイル(tmplloop.tmpl)
<html> <head> <title>HTML::Templateのサンプルプログラム LOOP</title> </head> <body> <h1>HTML::Templateのサンプルプログラム LOOP</h1> <TMPL_IF NAME=DATA_NUM> <table> <tr> <td>User Name</td> <td>Address</td> <td>Email</td> <td>Tel</td> </tr> <TMPL_LOOP NAME=USER_INFO> <tr> <td><TMPL_VAR NAME=USERNAME></td> <td><TMPL_VAR NAME=ADDRESS></td> <td><TMPL_VAR NAME=EMAIL></td> <td><TMPL_VAR NAME=TEL></td> </tr> </TMPL_LOOP> </table> <TMPL_ELSE> No data </TMPL_IF> </body> </html>
--- CGI(tmplloop.cgi)
#!/usr/bin/perl use strict; use warnings; use HTML::Template; my $template = HTML::Template->new(filename => 'tmplloop.tmpl'); my @loop_data = (); open my $infh, '<', "userdata.txt"; while (my $rec = <$infh>) { chomp $rec; if ($rec ne '') { my %row_data; my ($username, $address, $email, $tel) = split(/,/, $rec); $row_data{USERNAME} = $username; $row_data{ADDRESS} = $address; $row_data{EMAIL} = $email; $row_data{TEL} = $tel; push @loop_data, \%row_data; } } close $infh; $template->param(USER_INFO => \@loop_data); $template->param(DATA_NUM => scalar(@loop_data)); print "Content-Type: text/html; charset=utf-8\n\n"; print $template->output;
IPA(情報処理推進機構)オープンソフトウェア・センターが中心となって原案作成を進めてきたWebサービスの相互運用性に関するJIS規格(JIS X 7361、JIS X 7362、JIS X 7363)が公示された。これらのJIS規格を活用することにより、相互運用性の高いWebサービスを構築することが可能になる。
公示されたJIS規格は、Webサービス技術を推進する国際的な業界団体であるWS-Iが、2008年に制定したISO/IEC 29361:2008、ISO/IEC 29362:2008及びISO/IEC 29363:2008の三つの国際規格を、国内のITベンダー及び国内のユーザーからもより容易に、広く活用されることを目指し、IPAが日本語への翻訳を行うとともに、JIS規格とするための作業に取り組んできたもの。
情報処理推進機構:プレス発表:記事:Webサービス相互運用性関連JIS規格の公示について
公示されたJIS規格は、Webサービス技術を推進する国際的な業界団体であるWS-Iが、2008年に制定したISO/IEC 29361:2008、ISO/IEC 29362:2008及びISO/IEC 29363:2008の三つの国際規格を、国内のITベンダー及び国内のユーザーからもより容易に、広く活用されることを目指し、IPAが日本語への翻訳を行うとともに、JIS規格とするための作業に取り組んできたもの。
情報処理推進機構:プレス発表:記事:Webサービス相互運用性関連JIS規格の公示について
JM Projectは、日本語オンラインマニュアルパッケージの作成、配布を行なっているプロジェクト。JM Projectで翻訳されたマニュアルの閲覧や検索もできる。JM インデックスJM Projectで翻訳されたマニュアルの一覧。翻...
CHOBI(ちょび)は、ブログやホームページのサイドバーに簡単掲示板が設置できるサービス。デザインを選んで、コードをページに貼るだけで掲示板が作成できる。CHOBI(ちょび)- お手軽♪お気楽♪掲示板サービス
Bloglinesは、ニュースサイトやブログなどRSSやATOM形式で更新情報などをフィードとして配信しているサイトのフィードの購読を管理するためのオンラインサービス(オンラインフィードリーダー)。後で見るために、特...
レンタルサーバー事業を行っているファーストサーバが、オープンソースのブログソフトウェア「WordPress」で作成されたWebサイト(応募時から年内は一般に公開されるサイト、企業サイトや個人のブログなどジャンルは...
Postedbyという投稿サイト(マイクロブログ)を作成しました。現時点の仕様は、少し前にソースコードを公開した「メモる」とは記事の本文にHTMLタグが使えるかどうかの違い程度です(デザインもちょっと違います)が...
Google App Engine(Python)のチュートリアル。簡単なゲストブック アプリケーションを作成する過程で、Python ランタイム環境を使用する方法、データストアや Google ユーザー サービスなど、さまざまな App Engin...
「さきゅばす」は、ニコニコ動画の動画を、コメント付きの動画として保存できるオープンソースソフト。低スペックなPCでもコマ落ちなしで綺麗に変換することができる。変換にはffmpegを用い、iPodやPSP向けのmp4動画...
アクセスランキング
今日のアクセスランキング TOP 10
- 2NN 2ちゃんねるニュース速報+ナビ (5 PV)
- FC2動画やYouTubeなどから無料動画(映画やドラマ、アニメ、音楽など)を探す方法 (4 PV)
- ようつべ (YouTube) 動画のダウンロードと保存 (3 PV)
- 秋田県、記録的大雨で雄物川が氾濫し秋田新幹線も止まる (2 PV)
- 完全無料のMT4向けナンピンEA「Nanpin K(ナンピンケイ)」 #MT4 (2 PV)
- [C言語]UTF-8でエンコードされた文字列の文字数を取得するコード (2 PV)
- 安全性重視の完全無料ナンピンマーチンEA「Million Dollar(ミリオンダラー)」 #FX #ゴールド #ビットコイン (2 PV)
- [映画]インセプション(Inception) (1 PV)
- Googleニュースを視覚化するnewsola (1 PV)
- [Perl][HTML::Template]<TMPL_LOOP>タグのサンプルプログラム (1 PV)
今月のアクセスランキング TOP 10
- 2NN 2ちゃんねるニュース速報+ナビ (3286 PV)
- SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (527 PV)
- 安全性重視の完全無料ナンピンマーチンEA「Million Dollar(ミリオンダラー)」 #FX #ゴールド #ビットコイン (107 PV)
- 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (98 PV)
- SQLiteのSELECT文で上位 (TOP) n件のデータを取得する (76 PV)
- Million Dollar Ver 1.09向けの収益性を重視したゴールド(Gold、XAUUSD)ロングセットファイル (70 PV)
- 無料のMT4向けナンピンマーチン爆益(爆損)EA「Jipangu(ジパング)」 (69 PV)
- 仲値トレードが簡単にできる無料EA「NAKANE3 Ver 2.04」 #MT4 (61 PV)
- [FX]裁量ポジションを簡単に管理できるMT4向け無料の裁量補助EA「PositionKeeper」 (54 PV)
- 2chまとめサイト - 痛いニュース(ノ∀`) (48 PV)
アクセス統計
ディレクトリ
関連サイト