Autor Zpráva
Alastor Kopál
Profil *
Dobrý den
chtěl bych se zeptat na kód který by odpovídal tomuto příkladu
jsou tři zvířátka
pes má IP 14.56.123.45
kočka 45.269.85.125.236
a kůň 586.25.34.165

tak a na jednu stránku umístím tyto IP adresy v kódu který když třeba pes přijde na stránku napíše se "pes je na stránce"

dá se toto provést ? pokud ano prosím jak ?
peta
Profil
$ip = zjistiIp();
if (in_array($ip,$pole_ip)) {echo 'Prisel uzivate '.$uzivatele['$ip']['name'];}
Alastor Kopál
Profil *
děkuji zkusím
Alastor Kopál
Profil *
promiňte že jsem blbec ale můžu to zapsat : pes= 14.56.123.45 ?
Tomasds
Profil
Alastor Kopál
Nerozumím tomu, jak chceš tu informaci zobrazovat. Jestli chceš každé osobě zobrazit informaci jenom a právě o ní samotné, tak nechápu účel. Jestli chceš každému zobrazit informaci o všech přítomných, tak jak hodláš naložit s tím, když přihlášených zvířátek bude 1000?
Alastor Kopál
Profil *
Ne já mám přihlášených zvířátek 20 a chci aby každé zvířátko vědělo kolik je zrovna na té stránce zvířátek
Tomasds
Profil
Alastor Kopál
To je trochu něco jiného než "pes je na stránce", jak píšeš v #1.

Předpokládám, že přihlašování děláš přes databázi. Přidej si do tabulky členů sloupec 'prihlasen', do kterého dáš jedničku při přihlášení a nulu při odhlášení a případně po detekci nečinnosti.

Sčítání zvířátek pak uděláš jednoduše pomocí

SELECT COUNT() FROM zviratka WHERE prihlasen = 1
Alastor Kopál
Profil *
ale já nechci aby ten systém to zjišťoval podle přihlášení ja chci aby to zjistil podle IP
Alastor Kopál
Profil *
jak toto udělat ?
Tomasds
Profil
bez přihlášení nemáš jak zjistit, kdy se kdo odhlásil. Můžeš to jen odhadovat na základě neaktivity.

Vytvoř si tabulku IP a osob.
Když někdo otevře stránku, udělej

UPDATE prihlasene_osoby SET prihlasen=1 WHERE ip = $_SERVER['REMOTE_ADDR']

Když v tabulce adresa nebude, tak update neproběhne, ale to tě netrápí.
Vzápětí provedeš ten COUNT, co jsem psal nahoře a vypíšeš.

Ale opakuju: vymysli jak budeš detekovat to, že daný pes nebo kůň už stránku zavřel. Spolehlivé řešení neexistuje.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0