Hoi Leute,
wenn ich durch setcookie('Bla','24h', time()+60*60*24); einen Cookie setzte wird der dann nach 24h vom Browser wieder gelöscht?
Denn ich möchte eine 24h Sperre für meine Page.
Mfg Chris
Cookie-Frage
Wenn ich da jetzt mal von meinem Wissensstand ausgehe, wäre ich innerhalb von 3 Sekunden nach setzen des Cookie wieder auf deiner Seite, denn einen Cookie kann man einfach löschen, also für eine Sperre nicht unbedingt die beste Wahl.
Was die Funktion angeht, so ist das auf diese Weise möglich, jedoch löschen manche Browser die cookies beim beenden, dann wären die auch gelöscht.
Besser ließe sich das mit einer Datenbank lösen, z.B. in dem man in einem Cookie eine User-ID ablegt, und in der Datenbank den letzten Login ablegt, mit einer zusätzlichen Prüfung auf die Remote-IP, aber auch damit ist nicht 100%ig gewährleistet, dass der Besucher wirklich erst nach 24 Stunden wieder auf der Seite erscheinen kann.
Die Einwahl-IP ändert sich bei jeder Einwahl, daher mus man mehrere Funktionen kombinieren, z.B. den Bereich über einen Login abschotten, der den letzten Login aus der Datenbank abfragt, dann wäre es recht wahrscheinlich, dass der User erst nach 24 Stunden wieder erscheint, da er sich erst nach 24 Stunden wieder einloggen kann.
Ich hoffe, mit meinen Ausschweifungen hab ich dein Problen in etwa erfasst und habe dir ein paar gute Anregungen hinterlassen. Falls noch Probleme auftreten, kann ich vielleicht ein paar weitere Anregungen beisteuern.
Was die Funktion angeht, so ist das auf diese Weise möglich, jedoch löschen manche Browser die cookies beim beenden, dann wären die auch gelöscht.
Besser ließe sich das mit einer Datenbank lösen, z.B. in dem man in einem Cookie eine User-ID ablegt, und in der Datenbank den letzten Login ablegt, mit einer zusätzlichen Prüfung auf die Remote-IP, aber auch damit ist nicht 100%ig gewährleistet, dass der Besucher wirklich erst nach 24 Stunden wieder auf der Seite erscheinen kann.
Die Einwahl-IP ändert sich bei jeder Einwahl, daher mus man mehrere Funktionen kombinieren, z.B. den Bereich über einen Login abschotten, der den letzten Login aus der Datenbank abfragt, dann wäre es recht wahrscheinlich, dass der User erst nach 24 Stunden wieder erscheint, da er sich erst nach 24 Stunden wieder einloggen kann.
Ich hoffe, mit meinen Ausschweifungen hab ich dein Problen in etwa erfasst und habe dir ein paar gute Anregungen hinterlassen. Falls noch Probleme auftreten, kann ich vielleicht ein paar weitere Anregungen beisteuern.
- gn#36
- Ehrenadmin
- Beiträge: 9313
- Registriert: 01.10.2006 16:20
- Wohnort: Ganz in der Nähe...
- Kontaktdaten:
Eine einfache ID ist allerdings leicht zu fälschen, ich denke soetwas wie eine Session ID wäre angebrachter (Um genau zu sein: Je mehr Zeichen desto sicherer...) Das lässt sich dann auch in der Datenbank speichern, evtl. auch verschlüsselt.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.