Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ile osób jest aktualnie na stronie, jak ??
integer000
post 27.03.2006, 20:04:57
Post #1





Grupa: Zarejestrowani
Postów: 129
Pomógł: 0
Dołączył: 24.09.2005

Ostrzeżenie: (30%)
XX---


Jak zrobić coś takiego aby na stronie pisało ile jest aktualnie osób online questionmark.gif
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
krzysiekk
post 27.03.2006, 20:17:16
Post #2





Grupa: Zarejestrowani
Postów: 155
Pomógł: 17
Dołączył: 13.03.2006
Skąd: Jaworze

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


jesli masz dostep do bazy danych to ...:

CREATE TABLE STATS(
TIME INTEGER
)
UTWORZ TABELE W BAZIE


<?php
/*Skrypt pochodzi z książki "php. 101 praktycznych skryptów"
autor: Marcin Lis e-mail: 101scripts@marcinlis.com*/
$timeout = 60;

if(!$link = mysql_connect("localhost", "test", "test")){
echo("Problem z połączeniem z bazą danych.");
return;
}
if(!mysql_select_db("test")){
echo("Problem z połączeniem z bazą danych.");
mysql_close($link);
return;
}

$time = time();
$query = "INSERT INTO STATS2 (TIME) VALUES($time)";

if(!$result = mysql_query($query)){
echo("Problem z bazą danych: odrzucone zapytanie");
mysql_close($link);
exit;
}

$val = $time - $timeout;
$query = "DELETE FROM STATS2 WHERE TIME < '$val'";

if(!$result = mysql_query($query)){
echo("Problem z bazą danych: odrzucone zapytanie");
mysql_close($link);
exit;
}

$query = "SELECT COUNT(*) FROM STATS2";

if(!$result = mysql_query($query)){
echo("Problem z bazą danych: odrzucone zapytanie");
mysql_close($link);
exit;
}

$row = mysql_fetch_row($result);
if(!$row){
echo("Problem z bazą danych: nieprawidłowy wynik zapytania");
mysql_close($link);
exit;
}
mysql_close($link);

$count = $row[0];

if($count == 1){
echo("Ta strona jest przeglądana przez 1 użytkownika.");
}
else{
echo("Ta strona jest przeglądana przez $count użytkowników.");
}
?>


TO COS ZLICZA WSZYSTKIE ODWOLANIA

TO NIE JEST MOJE TYLKO Z KSIAZKI

POZDRAWIAM
Go to the top of the page
+Quote Post
integer000
post 27.03.2006, 20:22:18
Post #3





Grupa: Zarejestrowani
Postów: 129
Pomógł: 0
Dołączył: 24.09.2005

Ostrzeżenie: (30%)
XX---


A da się bez SQL questionmark.gif
Go to the top of the page
+Quote Post
hwao
post 27.03.2006, 21:20:26
Post #4


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




Da biggrin.gif

pisze z glowy calosc

  1. <?php
  2. function online( $ip ) {
  3. $a = unserialize( file_get_contents( './online.txt' ) );
  4.  
  5. $new = true;
  6. foreach( $a As $k => $v ) {
  7.  if( $v['ip'] == $ip ) {
  8.  // te ip jest, dodajemy time :)
  9.  $v['time'] = time();
  10.  $new = false;
  11.  }
  12.  
  13.  if( $v['time']+60 < time() ) {
  14. // sprawdzanie czy czasem ktos juz nie jest starym smieciem :)
  15. unset( $a[$k] );
  16.  }
  17. }
  18.  
  19.  
  20. if( $new == true ) {
  21.  $a[] = array( 'ip' => $ip, 'time' => time() );
  22. }
  23.  
  24. file_put_contents( './online.txt', serialize( $a ) );
  25.  
  26. return count( $a );
  27. }
  28.  
  29. var_dump( online( $_SERVER['RENOTE_ADDR'] ) );
  30. ?>


Nie gwarantuje ze to dziala dobrze:P calosc z glowy... najwyzej popraw


Napisz czy dziala/nie dziala
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: 14.08.2025 - 07:17