Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> A może by tak zrobić...
spenalzo
post 9.07.2003, 21:10:17
Post #1





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


... zrobić statystykę ile kto czasu spędził na forum? :-)
Jakby co to mam już gotowy skrypt - wykonałem na własne potrzeby (tutaj trochę skrócony) licznik czasu połączeń modemowych i przy niewielkiej modyfikacji nadałby się na forum.
Kod:
[php:1:dd9c813b4d]<?php
// Wyskakujące okienko, znajdujące się w tle
// które odświeża się co 30 sekund zapisując
// aktualny czas
if(!empty($user))
{
if(empty($date))
{
$date=date("d-m-Y-H-i-s");
$file=fopen("logs/".$user."/".$date.".txt","a");
}
else
{
$file=fopen("logs/".$user."/".$date.".txt","a");
}
fwrite($file,time()."#");
echo "<meta http-equiv="Refresh" content="30; URL=count.php?user=$user&date=$date">";
echo "Nie zamykaj tego okna przed rozł&plusmn;czeniem się.<br><br><a href="java script:window.close()">Rozł&plusmn;czyłem się - zakończ naliczanie</a>";
}
?>[/php:1:dd9c813b4d]

[php:1:dd9c813b4d]<?php
// Plik wyświetlający statystykę dla każdego użytkownika

function timegen()
{
$t=explode(" ",microtime());
return($t[1]+$t[0]);
}
$__time=timegen();

function czas($t)
{
$min=floor($t/60);
$godz=floor($min/60);
if($min>60)
{
$min=($min-($godz*60));
}
$sek=($t-($min*60) - ($godz*3600));
return($godz." h ".$min." min ".$sek." sek");
}

function godziny($t)
{
$tmp=explode("#",$t);
return(date("d.m.Y, H:i:s",$tmp[0])." -<br>".date("d.m.Y, H:i:s",$tmp[1]));
}
?>


<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
<title>Licznik - nie zamykaj tego okna!</title>
<link type="text/css" rel="stylesheet" href="style.css">
</head><body bgcolor="#CCE5FF">
<?php
if(empty($user))
{


// Wczytywanie nazw plików
$dir=opendir("logs/jedrek/");
while($plik=readdir($dir))
{
if($plik!="." && $plik!="..")
{
$pliki["jedrek"][]=$plik;
}
}
closedir($dir);

// Wczytywanie danych z plików
for($f=0; $f<count($pliki["jedrek"]); $f++)
{
$filename="logs/jedrek/".$pliki["jedrek"][$f];
$log=fread(fopen($filename,"r"),filesize($filename));
$temp=explode("#",$log);
$last=count($temp)-2;
$time["jedrek"][]=floor($temp[$last]-$temp[0]);
$utime["jedrek"][]=$temp[0]."#".$temp[$last];
unset($last,$temp,$filename,$log);
}

?>
<br><br><font size="2"><b><a name="jedrek">Jędrek</a></b></font>
<table border="1" width="400" cellpadding="5" cellspacing="0" bordercolorlight="#CCE5FF" bgcolor="#AAD5FF">
<?
for($i=0; $i<count($time["jedrek"]); $i++)
{
if($time["jedrek"][$i]>5)
{
echo "<tr><td width="50">".($i+1)."</td>";
echo "<td width="150">".czas($time["jedrek"][$i])."</td>";
echo "<td width="200">".godziny($utime["jedrek"][$i])."</td>";
echo "</tr>";
}
}
echo "</table>";
unset($pliki);


echo "<br><br><hr><br>";
for($i=0; $i<count($time["jedrek"]); $i++)
{
$razem+=$time["jedrek"][$i];
}
echo "<font size="2">Ł&plusmn;czny czas: <b>".czas($razem)."</b>";

}

echo "<br><br><center><font size="1">Czas generowania dokumentu: <b>".sprintf("%0.3f",timegen()-$__time)." sek.</b></font>";
?>[/php:1:dd9c813b4d]


--------------------

Go to the top of the page
+Quote Post
scanner
post 9.07.2003, 21:48:46
Post #2





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Hehe..
już mam PolePosition w ilości postów, to moge mieć i w czasie przebywania...


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
Seth
post 9.07.2003, 21:52:33
Post #3





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

Ostrzeżenie: (0%)
-----


Ja bym jeszcze dodal:
[php:1:312b3b5089]if( czas($razem) > 10000 )
{
print 'Stanowczo za duzo tongue.gif';
}[/php:1:312b3b5089]
Go to the top of the page
+Quote Post
scanner
post 9.07.2003, 22:04:49
Post #4





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Ja mam w palce wbudowane makro:

Jesli komputer jest zajęty przetwarzaniem Twojego zadania:
- kliknij na pierwsze okno IE po lewej stronie
- nacisnij f5
- sprawdz czy komputer zakonczyl wykonywanie twopjego zadania, jesli nie, to:
- przejrzyj nowosci na forum.


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
DeyV
post 9.07.2003, 22:13:30
Post #5





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




widać masz wolny komputer - i dużo czasu zajmuje mu przetważanie zadań 8) laugh.gif


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
KaMeLeOn
post 9.07.2003, 22:35:32
Post #6





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Szczerze, to nie wiem czemu ma to służyć...
Może ktoś nas przekona? rolleyes.gif


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
spenalzo
post 9.07.2003, 22:37:17
Post #7





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Cytat
Szczerze, to nie wiem czemu ma to służyć...

Ja sobie tylko tak luźno rzuciłem sobie pomysłem i kodem, wcale nie uważam, że to musi być. A czemu? Ciekawość aaevil.gif :-)


--------------------

Go to the top of the page
+Quote Post
KaMeLeOn
post 9.07.2003, 22:47:10
Post #8





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat
[...] A czemu? Ciekawość aaevil.gif :-)

Ciekawość to pierwszy stopień do piekła laugh.gif :wink:


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
Fo
post 9.07.2003, 23:46:42
Post #9





Grupa: Zarejestrowani
Postów: 401
Pomógł: 0
Dołączył: 18.04.2003
Skąd: Trójmiasto

Ostrzeżenie: (0%)
-----


mhm jak dla mnie pomysl jest fajny ale.... nie na to forum chyba.... bo jak np. jestem zalogowany i robie wogole cos innego - nie przegladam forum tylko sobie pisze jakis skrypcik ... to tez ma naliczac czas czy moze da sie zrobic cos takiego :
jesli cos robie - przegladam stronki.... pisze jakies posty... wtedy ok mozna by takie cos wmontowac.... mhm nie no sam nie wiem ... jestem z tym pomyslem na... tak = 50% && nie = 50% rolleyes.gif 8)
Go to the top of the page
+Quote Post
spenalzo
post 10.07.2003, 00:44:27
Post #10





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Ilość czasu mogłaby świadczyć o stopniu zaangażowania w forum, tak samo jak ilość postów, chociaż raczej bardziej teoretycznie - jak ktoś mam stałe łącze to siedzi bez przerwy prawie.
Fo - też nad tym myślałem, bo zapomniałem, że nie wszyscy mają modem :-) i na forum są podczas czytania/pisania. Można by to jakoś powiązać z tym co widzą admini, czyli co robi dany user.


--------------------

Go to the top of the page
+Quote Post
Tr@pi
post 15.07.2003, 09:06:26
Post #11





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 30.06.2003
Skąd: Uwielbiam to pytanie :

Ostrzeżenie: (0%)
-----


Ja tu widze rozwiazanie z nowym oknem, a mozna przeciez zrobic w ten sposob, ze np. zalozyc czas czytania jednego posta/jednego wyrazu (tylko drugi przypadek nierealny - obciazenie serwera) na (odpowiednio) 10/0.5 sek. [przykladowo] i ten czas dodawac do bazy danych (czas czytania jednego postu-mnozymy przez ilosc postow i to dajemy do bazy). I jeszcze - jezeli uzytkownik wykona jakas akcje szybciej niz czas przewidziany w zalozeniu, to dodajemy mu ten krotszy czas. Problemem moze byc tu np. przegladanie forum w wielu oknach, ale mysle, ze mozna by i ten problem rozwiazac.
Go to the top of the page
+Quote Post
Seth
post 15.07.2003, 11:02:56
Post #12





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

Ostrzeżenie: (0%)
-----


Mozna bylo by tez zastosowac to co opisalem tutaj: http://forum.php.pl/viewtopic.php?p=25086#25086 do zliczania czasu pobytu na forum.

Z tym, ze nie wiem czy wogole tego typu "udogodnienie" ma sens.


Natomiast przydala by sie jakas rozbudowana statystyka forum.
Go to the top of the page
+Quote Post
DeyV
post 15.07.2003, 11:20:58
Post #13





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




statystyka - jestem na tak
bajer z pomiarem czasu - Nie (wydałoby sie, ile czasu tu marnotrawię winksmiley.jpg )
A na poważnie - pomiar musiałby być mało dokładny, i tak naprawdę nic nie mówi.
Jest tyle ciekawszych modów dla BB...


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 29.05.2024 - 04:41