Autor Zpráva
Phoenix
Profil
Keď sa prihlási niekto na stránku, zapíše sa jeho ID do tabuľky "online". Pri každom načítaní stránky sa pri príslušnom užívateľovi obnoví čas. Pri odhlásení sa tento záznam zmaže, ale, keď užívateľ neklikne na logout, nespustí sa script ktorý ten záznam zmaže. Preto to chcem urobiť tak, že sa tie záznamy kde je čas starší ako 5-10 minút zmažú. Lenže problém je v tom, že neviem na to napísať
kód. Keď odčítavam time(); a ten z DB, vznikne z toho číslo 883(čas v DB je starý možno 10 minút). Keď dám mktime(0, 5); tak mi to vypíše 1236207946. Takže sa pýtam, ako tie časy porovnať? Skúšal som to už rôzne no časy v PHP absolútne nechápem...
Majkl578
Profil
$onlineTime = ~lastActivity~ + (5 * 60); //cas posledni aktivity + 5 minut
echo $onlineTime >= time() ? 'online' : 'offline'; //pokud posledni aktivita + 5 minut je vetsi nez cas ted, je porad online


misto ~lastActivity~ dosad promennou obsahujici cas posledni akce.
Phoenix
Profil
Moc moc ďakujem.
blazej44800
Profil
Phoenix:
misto ~lastActivity~ dosad promennou obsahujici cas
Ale v akom formáte ma byť??
Kajman_
Profil *
blazej44800:
Ale v akom formáte ma byť??

Ve stejném, jaký vrací funkce time.
blazej44800
Profil
a to je v akom???? lebo pre mna to je nezmiselné cislo
blazej44800
Profil
aha uz chaoem do tej databazy sa ma zapisovat vysledok prikazu time().... dobre uz tomu chapem :D
Kajman_
Profil *
blazej44800:
V příspěvku [#2] si klikněte na time, je to tam napsáno.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: