Forum Webscript.Ru
Программирование => Perl => Тема начата: ZORRO от 08 Сентября 2002, 10:20:55
-
Как узнать сколько пользователей сейчас у меня на сайте и как работать с кукесами(исходничек), плиз! :)
-----------------
http://www.delphicity.hoha.ru
-
Как узнать сколько пользователей сейчас у меня на сайте и как работать с кукесами(исходничек), плиз!
для того чтобы куки править можно использовать модуль Apache::Cookie в документации все написано с примерами даже :) или вручную ставить заголовки, я например, это делаю так:
$r->headers_out->add(\'Set-cookie\' => \'name=value; path=/; expires=Sat, 1 Jan 2005 00:00:00 GMT;\');
правда я использую специфическую технологию Mason (http://www.masonhq.com) называется.
-
#!/usr/bin/perl
print "Content-type: text/html\\n\\n";
$dbfile = "Visitiors.txt";
$onetime = 300; #разница в секундах - сколько юзверь, ещё не
#загружавший 2ю, 3ю, и т.д. страницу считается всё ещё сидящим
#на сайте.
$count = 1;
$currtime = time();
$remoteaddr = $ENV{\'REMOTE_ADDR\'};
open(INF,$dbfile);
@indata = ;
close(INF);
unlink($dbfile);
open(OUTF,">$dbfile");
close(OUTF);
chmod (0777,"$dbfile");
foreach $i (@indata) {
chop($i);
($time,$address,$host) = split(/\\|/,$i);
if (($currtime - $time) <= $onetime) {
if ($address ne $remoteaddr) {
$count = $count + 1;
open(OUTF,">>$dbfile");
print OUTF "$time|$address\\n";
close(OUTF);
}
}
}
open(OUTF,">>$dbfile");
print OUTF "$currtime|$remoteaddr\\n";
close(OUTF);
print "Народу у нас пасётся на сайте: ~$count\\n";
exit;