#!/usr/local/bin/perl # ###################################################################### ### ### ### CGIクイズシステム TakaQ Ver.2.05 ### [1/5] トップページ (tqindex.cgi) ### (c) 1996-1999 Takahiro Nishida ### http://www.mytools.net/ ### ### ###################################################################### # ### 変数設定部 (詳細は上記ページをご覧下さい) ###################### $bg1 = "#808000"; $bg2 = "#FFA500"; $bg3 = "#CC99FF"; $bg4 = "#FFC0CB"; $font1 = "#FFFFFF"; $font2 = "#000000"; $font3 = "#000000"; $font4 = "#000000"; ### 変数設定部 (ここまで)########################################### require "./tqlib.pl"; print "Content-type: text/html\n\n"; &main; sub main{ &init_variables; open(FILE, "$tphtml") || die &tqlib'error($tphtml, 1); foreach (){ if($_=~//){ &show_genre; } else{ print $_; } } close(FILE); } sub init_variables{ $ext = $tqlib'ext; $basedir = $tqlib'basedir; $genrefile = "$basedir/genre.txt"; $tphtml = "$basedir/tqtop.html"; } sub show_genre{ open(FILE,"$genrefile") || die &tqlib'error("$genrefile",1); @genres=; close(FILE); print "
"; &tqlib'copyright; print "

\n"; foreach $data(@genres){ @sps=split("\t",$data); $dir="$basedir/data/$sps[0]"; $summfile="$dir/summery.txt"; if(!(open(FILE,"$summfile"))){ $summs[11]="ERROR!"; $summs[13]="ERROR!"; } else{ @summs = split("\t",); close(FILE); } $ratefile = "$dir/rate.txt"; if(!open(FILE,"$ratefile")){ $arate="ERROR!"; } else{ $rbuf = ; close(FILE); ($try, $cor) = split("\t", $rbuf); $arate = &tqlib'calc_rate($cor, $try); } $hsfile = "$dir/highscore.txt"; if(!open(FILE,"$hsfile")){ $himes="ERROR!"; } else{ $hs=; close(FILE); @hss=split("\t",$hs); $htime = &tqlib'change_time($hss[1]); if($hs){ $himes="$hss[3] ($hss[2])
成績:$hss[0]%、タイム:$htime"; } else{ $himes="登録者無し"; } } $qno=&tqlib'count_quiz($dir); $dif=""; for(1..$sps[3]){ $dif="$dif★"; } #-------------------------------------- print <<"EOF";

■ $sps[1] ■
挑戦 Top:$himes
難易度:$dif
出題数:$sps[2]問 挑戦者:$summs[11]人 $sps[5]
問題数:$qno問 合格者:$summs[13]人
合格点:$sps[4]%以上 正答率:$arate%
成績一覧 正答率一覧

EOF #-------------------------------------- } }