Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[PYTANIE]xxx aktywnych użytkowników (w ciągu ostatnich xx minut) - phpbb by przemo


Rekomendowane odpowiedzi

Opublikowano

Przecież jest na samym dole? Przynajmniej powinno być. Zresztą phpbb by przemo już nie jest wspierane więc radzę wybrać inne forum... Pewnie dostanę ostrzeżenie za to że mówię na co ma się przenieść skoro nie o tym jest temat-.- żenada

Osobiście pomagam tylko na PW lub e-mail


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


https://github.com/smietanka

Opublikowano

czyli rozumiem że chodzi ci o to jak jest na samym dole tak jak tutaj na forum tak? że pisze ile osób i gości było w ostatnich 60 minutach?

Opublikowano

 

czyli rozumiem że chodzi ci o to jak jest na samym dole tak jak tutaj na forum tak? że pisze ile osób i gości było w ostatnich 60 minutach?

Tak

Opublikowano

Dodajesz do bazy danych tabele:

CREATE TABLE IF NOT EXISTS `all_online` (
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `ip` varchar(25) NOT NULL,
  `date` int(20) NOT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; 

________________________________________________________________________________________

Na początku strony (dodaje odwiedzających do bazy danych a jak już byli to daje im status online na 60 min):

$online =  mysql_query("select * from all_online where ip = '".$_SERVER['REMOTE_ADDR']."'");

if(!empty($online)){
    $update = mysql_fetch_array($online);
    $query = mysql_query("UPDATE all_online set date = '".time()."' where ip = '".$_SERVER['REMOTE_ADDR']."'");
}else{
    $add = mysql_query("INSERT INTO all_online set ip = '".$_SERVER['REMOTE_ADDR']."', date = '".time()."'");
}
 

Pod tym to (Liczy ile osób jest online):

$online = mysql_query("select * from all_online");
if(mysql_num_rows($online) != 0){
    while($online_one = mysql_fetch_array($online)){
        if(($online_one['date'] + 3600) > time()){
            $all_online_number += 1;
        }
    }
}

________________________________________________________________________________________

Wyświetlasz poprzez (W dowolnej części strony):

echo $all_online_number;

________________________________________________________________________________________

Jeżeli osoba odwiedzająca stronę nie wykazała aktywności przez godzinę nie jest brana jako osoba online.

________________________________________________________________________________________

Ps. Ten kod zlicza także unikalne wizyty na stronie.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...