File name:bbsread.cgi 1:#!/usr/bin/perl 2:print "Content-type:text/html\n\n"; 3:require "cgi-lib.pl"; #cgi-lic.plを読み込む 4:require "jcode.pl"; #jcode.plを読み込む 5:&ReadParse; 6:$fn=logfile; %bbsのlogfile 7:open(LOG," < $fn")||die "erorro!\n"; # logfileをopen 8:@list=< LOG > ; # logfileの中身を配列に読み込む 9:close(LOG); 10:print "< html > \n"; 11:print "< /head > \n"; 12:print "< meta http-equiv=\"Content-Type\" content=\"text/html; charset=euc-jp\" > \n"; 13:print "< title > 一言掲示板(仮) < /title > "; 14:print "< /head > \n"; 15:print "< body >\n"; 16:print " < center > \n"; 17:print " < h2 > 一言掲示板(仮) < /h2 > "; 18:print " < a href=\"bbswrite.html\" > 書き込む < /a > "; 19:print " < hr > \n"; 20:print " < /center > \n"; 21:print " < font size=2 color=\"black\" > "; 22:#logfileの中身を表示させる。 23:for($i=0;$i < @list;$i++){ 24: $s=$i+1; 25: ($name,$com,$color)=split(/\t/,@list[$i]); 26: &jcode'convert(*name,'euc'); # 文字コードを変換する 27: &jcode'convert(*com,'euc'); 28: print "[$s] 名前 < font color=\"$color\" > $name < /font > : $com\n < hr > "; 29: } 30:print " < /font > "; 31:print " < /body > \n"; 32:print " < /html > "; |
File name:bbswrite.cgi #bbswrite.htmlから情報を受け取ってlogfileを編集するcgi 1:#!/usr/bin/perl 2:require "./cgi-lib.pl"; 3:require "./jcode.pl"; 4:&ReadParse; #情報を受け取って、変数に代入 5:$data=$ENV{'QUERY_STRING'}; 6:$name=$in{'name'}; 7:$com=$in{'com'}; 8:$color=$in{'color'}; 9:print "Content-type:text/html\n\n"; 10:print " < html > < head > \n"; 11:print " < meta http-equiv=\"Content-Type\" content=\"text/html; charset=euc-jp\" > \n"; 12:print " < title > 一言掲示板 < /title > \n"; 13:print " < /head > < body > \n"; 14:print " < h2 > 書き込み確認 < /h2 > < hr > \n"; 15: 16:&jcode'convert(*name,'euc'); 17:&jcode'convert(*com,'euc'); 18:if($name ne "" && $com ne ""){ 19: print "$name < br > "; 20: print "$com < br > "; 21: print "名前の色 : < font color=\"$color\" > $color < /font > < hr > "; 22: print " < hr > \n"; 23: print " < a href=\"bbsread.cgi\" > 掲示板に戻る < /a > \n"; 24: $fn=logfile; 25: open(LOG,"+ < $fn"); 26: @bbs= < LOG > ; #配列の一番上に新しく追加 27: unshift @bbs,"$name\t$com\t$color\n"; #logfileを一度初期化してから書き込み 28: truncate(LOG,0); 29: print LOG @bbs; 30: close(LOG); 31: } #名前とコメントが書かれていなかったらエラーを表示 32:else{ 33: print "エラー!名前を入力して下さい。or なにかしゃべって下さい < br > "; 34: print " < a href=\"bbsread.cgi\" > 掲示板に戻る < /a > \n"; 35:} 36:print " < /body > < /html > \n"; |
File name:bbswrite.html 1: < html > 2: < head > 3: < meta http-equiv="Content-Type" content="text/html;charset=euc-jp" > 4: < title > 一言掲示板 < /title > 5: < /head > 6: < body > 7: < center > 8: < h2 > 一言書き込んで下さい。悪口はやめて < /h2 > 9: < hr > 10: < /center > 11: < form method="get" action="bbswrite.cgi" > 12:名前 ; < input type="text" name="name" size=60 > < br > 13:一言 : < input type="text" name="com" size=60 > < br > 14:名前の色 : < select name="color" size=1 > 15: < option value="black" > black 16: < option value="green" > green 17: < option value="gold" > yellow 18: < option value="red" > red 19: < option value="blue" > blue 20: < /select > 21: < input type="submit" value="書きこむ" > 22: < /form > 23: < /body > 24: < /html > |