Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ajax]Zróbmy coś po wyjściu
Forum PHP.pl > Forum > Po stronie przeglądarki
MWL
Czy jest jakiś sposób na wykonanie kodu PHP (np. za pomoca ajaxa) po wyjściu z przeglądarki??
Jeśli tak to jaki? Bo chciałbym to wykorzystac do statusu ludzi aktualnych obecnie na stronie.
Crozin
w JS jest coś co uruchamia daną f-cję po wyłączeniu (nie kojarze już - w dodatku JS słabo znam) - ale nie zawsze to działa.

Zrób to inaczej - poprostu zapisuje sobie w jakiejś tabeli (w bazie danych) aktuallnie zalogowanych użytkowników. Przy każdym odświeżeniu strony aktualizuj pole lastActive (zapisuj tam datę w formacie UNIXowym (time" title="Zobacz w manualu PHP" target="_manual)) - następnie wybierasz uzytkowników online w taki sposob:
  1. <?php
  2. $a = 5 * 60; //5 minut
  3. $result = mysql_query('SELECT * FROM uzytkownicyOnline WHERE lastActive >= ' . (time() - $a) . ' ORDER BY lastActive DESC;');
  4. while(...)
  5.  ...
  6. ?>
Cezar708
nie wiem czy Ci to pomoże, ale jest jeszcze coś takiego jak zadrzenie onunload, które dziala tak:
  1. function naWyjscieZTejPostrony(){
  2. ajax.get({url: uzytkownik_zamknal_strone.php});
  3. }
  4.  
  5. <body onunload="naWyjscieZTejPostrony()">


pozdrawiam
Cezar708
MWL
Cytat(Crozin @ 1.05.2008, 12:42:33 ) *
w JS jest coś co uruchamia daną f-cję po wyłączeniu (nie kojarze już - w dodatku JS słabo znam) - ale nie zawsze to działa.

Zrób to inaczej - poprostu zapisuje sobie w jakiejś tabeli (w bazie danych) aktuallnie zalogowanych użytkowników. Przy każdym odświeżeniu strony aktualizuj pole lastActive (zapisuj tam datę w formacie UNIXowym ([manual\]time\[/manual\])) - następnie wybierasz uzytkowników online w taki sposob:
  1. <?php
  2. $a = 5 * 60; //5 minut
  3. $result = mysql_query('SELECT * FROM uzytkownicyOnline WHERE lastActive >= ' . (time() - $a) . ' ORDER BY lastActive DESC;');
  4. while(...)
  5.  ...
  6. ?>

Ja znam na tyle php, ale problem jest taki "jak moge to odswiezać, aby ajax nie pracował nonstop"...
devnul
Kod
<body onclose="kodjs()">
MWL
geniusz ;D
devnul
mów mi tak jeszcze tongue.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.