初めてCGIを自作してみましたが、知識が不足しているのでご教示お願い致します。
24時間年中無休な感じで、予約と空数表示が出来るものを作りたく思います。
(開始時間を指定すると12時間の予約が可能なようにしています。)
●年●月●日~■年■月■日の指定と、空数の表示は出来るようになりました。
予約すると空数を1つ減らしたいのですが上手くいきません…
hoge.dat を読み込んで予約された時間に相当する$t00~$t23の数値から-1して
hoge2.dat に出力させたいです。
どのように描き足すと良いかご教示よろしくお願い致します。
# 年; 月; 日; 月末; スタート時間;
$y=$in{y}; $m=$in{m}; $d=$in{d}; $end_d=$in{end_d}; $start=$in{start};
open(IN,”./hoge.dat”) || &error(“Open Error : ./hoge.dat”);
@hoge =
close(IN);
($jikan,$dummy) = split(/:/,$start);
$yoyaku=$jikan-1;
for($c=1;$c<=12;$c++){
if($yoyaku<24){ $yoyaku++;
foreach (@hoge) {
($nen,$gatu,$ppi,$t00,$t01,$t02,$t03,$t04,$t05,$t06,$t07,$t08,$t09,$t10,$t11,$t12,$t13,$t14,$t15,$t16,$t17,$t18,$t19,$t20,$t21,$t22,$t23) = split(/-/);
if ($yoyaku > 23){
if($end_d==$d){$m=$m+1; $d=1; $yoyaku=0;} else {$d=$d+1; $yoyaku=0;}
}
if ($y == $nen && $m == $gatu && $d == $ppi){
@timeline = ($horf,$t00,$t01,$t02,$t03,$t04,$t05,$t06,$t07,$t08,$t09,$t10,$t11,$t12,$t13,$t14,$t15,$t16,$t17,$t18,$t19,$t20,$t21,$t22,$t23);
$aki = $timeline[$yoyaku];
if ($aki == 0){$ippai=99}
}
}
}
print “
n””;