パソコンおやじの掲示板
[記事リスト] [新着記事] [ワード検索] [過去ログ] [管理用]

タイトル あちこち手を出さなくても・・・
投稿日: 2012/03/10(Sat) 16:57
投稿者おやじ

> すみません、kmです。本の途中にCGI.pmというのが出てきたので、使ってみようと思います。
> 
> さっきまで、printでhtmlを書けばできると思っていました・・・・

printで何も問題なく出来ます。
アマチュアがプロ(仕事)のお手伝いはできませんので、これが最後です。
10分で書いたので細かいことは無視してサンプルを見てください。

------------------------------------------------
#!/usr/bin/perl

# 項目名
@item =(
'お名前',
'郵便番号',
'住所',
'TEL',
'E-Mail',
'性別',
'生年月日',
'○○',
'XXXXXX',
'パスワード'
);

# CSVファイル名
$csvfile = 'test.csv';
# 検索用データ(とりあえず固定で)
$SeekData = "2011/5/10 14:21:00";

&data_read("$SeekData");

sub data_read{
	# CSVファイル読み込み
	open(IN,"$csvfile") || die "Cannot file open!" . $csvfile;
	my @data = <IN>;
	close(IN);
	chomp @data;

	# 行数取得(0から)
	my $line = $#data;

	# ヘッダ出力
	&header("テスト");

	# タイトル行出力
	print <<"_EOM_";
<table cellspacing="2" cellpadding="3" border="1">
<tr>
<th>No.</th>
_EOM_

	foreach $i (0 .. $#item){
		print "<th style=\"text-align:center;\">【$item[$i]】</th>\n";
	}
	print "</tr>\n";

	$pcount = 1;
	# 各行を読み出し
	for ($count=0; $count<=$line; $count++){
		my($date,$name,$todouhuken,$adress,$tel,$email,$gender,$birth,$question,$ans,$pay) = split(/,/,"$data[$count]");
		# データ一致するか?(検索用データ&読み込んだデータ)
		if($SeekData eq $date){
			print <<"_EOM_";
<tr>
<td style="text-align:right;">$pcount</td>
<td>$name</td>
<td>$todouhuken</td>
<td>$adress</td>
<td>$tel</td>
<td>$email</td>
<td>$gender</td>
<td>$birth</td>
<td>$question</td>
<td>$ans</td>
<td>$pay</td>
</tr>
_EOM_

			$pcount++;
		}

	}
	print "</table>\n";
	&footer;
}

sub header{
	my $title = $_[0];

	print "Content-type: text/html\n\n";
	print <<"_EOM_";
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=Shift_JIS">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<title>$title</title>
</head>
<body>
_EOM_

}

sub footer{
	print <<"_EOM_";
</body>
</html>
_EOM_

}


- 関連一覧ツリー (▼ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)
おなまえ
Eメール
タイトル
メッセージ   手動改行 強制改行 図表モード
参照先
暗証キー (英数字で8文字以内)
確認キー
確認キー
投稿する場合は、左に表示されている3文字(英大文字)の確認キーを必ず入力してください。
 (確認キーは表示してから30分間のみ有効です。)
  プレビュー

- 以下のフォームから自分の投稿記事を修正・削除することができます -
処理 記事No 暗証キー