Ezt hogy lehetne másképp megoldani (PHP)?
Figyelt kérdés
Van az oldalamon egy bejelentkező felület. Ha a felhasználó bejelentkezik, akkor az adatbázisba felküldök egy 1-es értéket, ez azt jelképezi hogy be van jelentkezve. Ha kijelentkezik akkor egy 0-át, hogy ki van jelentkezve. Na de nem mindig nyomnak rá a kijelentkezésre, van amikor csak 1szerűen bezárják a böngészőt. Hogy lehetne megoldani azt hogyha bezárják a böngészőt akkor lazába felküldjön egy 0-át? Erre van valami megoldás?2012. márc. 15. 08:57
1/3 iostream válasza:
Erre így konkrétan nincs. A http egy stateless protokoll, állapot nélküli. A problémádra már létezik általános megoldás, gyanítom, hogy a PHP-ban is implementálva van valami szabványosított eszköz, de te is egyszerűen megoldhatod: 1 helyett egy időbélyeget raksz be az adatbázisba, amit minden műveletnél ellenőrzöl, hogy milyen régi, ha túl régi akkor a bejelentkező képernyőt adod vissza, ha elég friss akkor csak frissíted az időbélyegzőt a jelenlegi értékkel.
2/3 A kérdező kommentje:
De ez az adatlapján jelenne meg úgy mint pl elérhető vagy nem elérhető. Érted? ha érted akk bocsi :D
2012. márc. 15. 10:06
3/3 iostream válasza:
Meg kell határoznod egy maximális időt, amíg bejelentkezve tartod az illetőt. Ha a timestamp (időbélyeg) ennél régebbi, akkor kijelentkezettnek minősül.
Persze lehet javascripttel is bűvészkedni (lásd facebook chat), de az már nem kliensoldal, és amúgy is megerőszakolása egy stateless protokoll feletti kommunikációnak, tehát nehézkesebb.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!