Alexander Ipp
BANNED | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Fuchsia Короче у себя баг я кажется нашёл. Код: sub whosonline { local($instruct) = @_; ($tempusername, $where, $method) = split(/\|/, $instruct); $guests = 0; $members = 0; $currenttime = time; #### На новых бордах убрать следующу строку.... $membergone = 15; $userexpire = $currenttime - ($membergone * 60); $ipaddresstowo = $ENV{'REMOTE_ADDR'}; ######## Stats hack #$logname = $tempusername; ######## &getmember("$inmembername"); if ($tempusername eq "Guest" || $userregistered eq "no") { $tempusername = "Guest"; } $filetoopen = "$ikondir" . "data/onlinedata.dat"; $filetoopen = &stripMETA($filetoopen); open(FILE,"$filetoopen"); #flock(FILE, 1); @onlinedata = <FILE>; close(FILE); open(FILE,">$filetoopen"); #flock(FILE, 2); $memberprinted = "no"; foreach $line (@onlinedata) { chomp $line; ($savedusername, $savedtime, $savedwhere, $savedip) = split(/\|/, $line); $savedusername =~ s/ /_/g; $tempusername =~ s/ /_/g; #$savedusername = &unHTML($savedusername); #$tempusername = &unHTML($tempusername); unless ("$userexpire" > "$savedtime") { if ($savedusername ne "Guest" && $tempusername ne "Guest") { if ("$savedusername" ne "$tempusername") { print FILE "$line\n"; } else { print FILE "$savedusername|$currenttime|$where|$ipaddresstowo\n"; $memberprinted = "yes";} } else { if ("$savedip" ne "$ipaddresstowo") { print FILE "$line\n"; } else { print FILE "$savedusername|$currenttime|$where|$ipaddresstowo\n"; $memberprinted = "yes";} } } } # end foreach if ($memberprinted eq "no") { print FILE "$tempusername|$currenttime|$where|$ipaddresstowo\n";} close(FILE); ####### Stats hack #$referer = $ENV{'HTTP_REFERER'}; #$browser = $ENV{'HTTP_USER_AGENT'}; #$media = $ENV{'HTTP_ACCEPT'}; # #open(LOGFILE, ">>$ikondir/data/stats.log"); ##flock(FILE, 2); #print LOGFILE "$logname|$currenttime|$where|$referer|$ipaddress|$browser\n"; #close(LOGFILE); ####### if ($method eq "$ibtxt{'0016'}") { $filetoopen = "$ikondir" . "data/onlinedata.dat"; $filetoopen = &stripMETA($filetoopen); open(FILE,"$filetoopen"); @onlinedata = <FILE>; close(FILE); foreach $line (@onlinedata) { chomp $line; ($savedusername, $savedtime, $savedwhere, $savedipadr) = split(/\|/, $line); $lookfor = substr($savedusername, 0, 5); if ($lookfor eq "$ibtxt{'0043'}") { $guests++; } else { $members++; $cleanmember = $savedusername; $cleanmember =~ s/ /\_/g; $savedusername = substr($savedusername,0,20) if length $savedusername > 19; $memberoutput .= qq~» <a href="$profileprog?action=show&member=$cleanmember">$savedusername </a>~; } } } } # end routine | Попробуйте кто хочет... У меня лично на локале вроде всё пашет... Если всё будет чётко - значит гуд, если нет - я ещё пороюсь. |