Perlについての質問箱 45箱目
■ このスレッドは過去ログ倉庫に格納されています
0700693
2011/01/16(日) 01:29:23先ほどのを導入して試したら別の問題に突き当たりました。
不正解時の処理で、$PL_p[$q_no]--として点数を引き、&DBM_SAVE;で別途用意したサブルーチン(下記)で減点後の点数を保存してから先ほどのものを書いています。
sub DBM_SAVE{
open(PUSHLOG,">./$DBF/$nend/$DB_P");
print PUSHLOG "\%PLAYER_LIST=(\n";
foreach $key (sort {$a<=>$b} keys %PLAYER_LIST){
if($key ne $ENV{'REMOTE_USER'}){
print PUSHLOG "\"$key\"=>\"$PLAYER_LIST{$key}\",\n";
}
}
print PUSHLOG "\"$ENV{'$name'}\"=>\"@PL_p\",\n";
print PUSHLOG ");\n";
close(PUSHLOG);
}
ところが、得点状況自体は保存されているものの、@VL_pに入るのは減点前の点数になってしまいます。
どこがいけないのでしょうか?
$PL_p[$q_no]--;
&DBM_SAVE;
CHECK: foreach my $nen (@kakdt){
require "./$DBF/$nen/$DB_P";
@VL_p=split(/\,/,$PLAYER_LIST{"$ENV{'$name'}"});
foreach my $point (@VL_p){
if ($point){$check=1; last CHECK;}
}
}
■ このスレッドは過去ログ倉庫に格納されています