if($in{'aite'} ne $SAT{'nm'}){
# 相手が見つからない
$soko_com .= qq|14<>0<>$suryo<>$time<>1212<>$to_uid<>_|;
}
&soko_write;
}
#-----------------------------------------
# 倉庫ファイル
sub soko_open{
# 倉庫ファイル読み込み
if(-e $soko_file){
open(IN,"$soko_file") || &error("1 can't open $soko_file.",1);
$soko_com = <IN>;
close(IN);
}
# 配列に格納
my @line_com = split(/_/,$soko_com);
# $log .= qq|<br>*** $#line ***<br>|;
foreach(0..$#line_com){
my($typ,$lst,$cnt,$sokotime,$from,$to,$lv) = split(/<>/,$line_com[$_]);
$csoko_typ[$_]=$typ;
$csoko_lst[$_]=$lst;
$csoko_cnt[$_]=$cnt;
$csoko_time[$_]=$sokotime;
$csoko_from[$_]=$from;
$csoko_to[$_]=$to;
$csoko_lv[$_]=$lv;
}
}
sub soko_write{
# if($lockkey){ &lock; }
open(OUT,">$soko_file") || &error("2 can't open $soko_file");
print OUT $soko_com;
close(OUT);
if(-e $lockfile){ unlink($lockfile); }
if($flg_backup==1){
open(BAK,">>$soko_back") || &error("3 can't Open $soko_file");
print BAK "$soko_com\n";
close(BAK);
}
}
#-----------------------------------------
# 宛先確認
sub usr_check{
local @tdat;
# 参加者データファイル一覧取得/一括読み込み
opendir(DIR,"$usrdata") || &error("ユーザデータ読みこみエラー",1);
@usrfile = grep /\.cgi/,readdir(DIR);
closedir(DIR);
foreach (0 .. $#usrfile) {
open(IN,"$usrdata$usrfile[$_]") || &error("can't open $usrfile[$_]",1);
$line = <IN>;
close(IN);
push(@tdat,$line);
}
my $flag=0;
foreach(0 .. $#tdat){
%SAT = '';
my @prats = split(/,/,$tdat[$_]);
foreach $prats (@prats){
my($key,$v) = split(/;/,$prats);
$SAT{$key} = $v;
}
if($SAT{'nm'} eq $in{'aite'}){
$to_uid=$SAT{'id'};
$flag=1;
last;
}
}
if(!$flag){
$log = qq|$in{'aite'}さんという参加者は存在しません。<br>| ;
$to_uid="";
}
}
&soko_com_in;