WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik



Im Homepage und Webhosting-Forum --- PHP: Login per $_SESSION

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.

Forum » PHP & MySQL » PHP: Login per $_SESSION - 15 Juli 2020 Antworten
im Forum für Webhosting Homepage gefunden:
PHP: Login per $_SESSION
FrediL
Fachidiot
Threadstarter




Beiträge: 101

Hallo!

Ich habe gestern mal ein bisschen mit den Sessions in PHP gebastelt und mir einen Login-Bereich erstellt, wie es beim Webwork-Magazin beschrieben ist.

Wie kann ich diesen Bereich erweitern, so dass bei dreimaliger flascher Passwort eingabe der Login für diesen User gesperrt wird?
--> Kann ich dazu einfach in der DB noch eine Spalte mit Status anlegen und diese ggf. ändern, so dass ein einloggen nicht möglich ist?

Außerdem hätte ich gerne noch eine zeitliche Begrenzung, so dass nach sagen wir 30min Inaktivität die Session geschlossen wird.
--> Dazu müsste ich ja nach 30min einfach auf die logout-Datei verlinken. Nur dies soll ja nur geschehen, wenn man im Login nichts mehr macht.

Vielen Dank im Voraus


---
ergebniswelt.com -> Fußballergebnisse und mehr

  Profil   Website   Editieren   Zitieren
Philipp Gérard
Foren-Team




Beiträge: 1504

a) in dein formular ein feld einbauen, in dem du die anzahl an faillogins einsetzt und bei jedem faillogin diese zahl um eins erhöhen. wenn eine zahl >= 3 übermittelt wird einfach abweisen und ip auf den index (tabelle) setzen.

---
Arbeit ist das Feuer der Gestaltung. - Marx

  Profil   E-Mail   Website   Editieren   Zitieren
Ticonderoga
Pixelschubser




Beiträge: 4

Generell ist es sinnvoll, Zugänge mit einem "Aktiv"-Feld zu speichern. Damit kannst Du dann auch Benutzer deaktivieren, ohne diese löschen zu müssen. Wenn man z.B. mit Fremdschlüsseln arbeitet, d.h. Daten teilweise in anderen Tabellen (Relationen) speichert, kann es ziemlich schnell ecklig werden, wenn man anfängt so etwas zu löschen, weil damit Inkonsistenzen, d.h. Zustände, die eigentlich nicht eintreten dürfen, entstehen können und Dein Programm durcheinander bringen. Deswegen sollte man sich sowieso angewöhnen, möglichst ohne "Löschen"-Operationen zu arbeiten. Keine Angst, die Datenbank läuft auch nicht über, die DB-Managementsystem organisiert die Daten schon möglichst effizient.
Bzgl. deiner Aktivität, nach der nach 30 Minuten ausgeloggt werden soll: Ich würde an Deiner Stelle die letzte Aktivität auch als Attribut in der Relation (Tabelle) speichern und beim Laden einer Seite des geschützten Bereichs dieses Attribut updaten, bzw. prüfen, ob der letzte Eintrag schon länger als 30 Minuten her ist. Wenn Du einfach auf die log-out datei verweist, könnte man das System einfacher überlisten...

Diese Nachricht wurde geändert von: Ticonderoga
  Profil   Editieren   Zitieren
FrediL
Fachidiot
Threadstarter




Beiträge: 101

Also deiner Meinung nach, soll ich einfach in der DB, in der die Userdaten gespeichert werden eine Spalte anlegen, in die ich immer die letzte aktive Zeit eintrage. Am Anfang jeder Datei dann einfach diese Zeit mit der jetzigen vergleichen und dann entweder autom auf die Logout-Seite verlinken oder eben die Datei normal ausführen.

Nur was meinst du damit:
Wenn Du einfach auf die log-out datei verweist, könnte man das System einfacher überlisten...


Gibt es eine Möglichkeit diese aktive Zeit auch einfach mit der Session ID zu übergeben?

---
ergebniswelt.com -> Fußballergebnisse und mehr

  Profil   Website   Editieren   Zitieren
Ticonderoga
Pixelschubser




Beiträge: 4

ja, prinzipiell. Du solltest beim Laden einer jeden Datei, die Du im internern Bereich ablegst, als erstes prüfen, ob der Benutzer etwas im internen Bereich zu suchen hat, sprich ob seine letzte in der Relation eingetragene Zeit und die jetzige über eine halbe Stunde differieren. Und natürlich solltest Du - bei erfolgreicher Prüfung - ein Update der Zeit der letzten Aktion machen, damit der Benutzer, falls er länger als eine halbe Stunde im internen Bereich ist, nicht zu Unrecht rausgeschmissen wird.
Wozu willst Du ihn dann (wenn "seine Zeit abgelaufen ist") denn eigentlich noch extra ausloggen? Wie ich schon geschrieben habe, würde ich den Vorgang des ausloggens dann nicht extra über das Laden einer neuen Datei realisieren, weil ich das als Außenstehender mit den richtigen Rahmenbedingungen und ein wenig Sachkenntnis manipulieren kann.
Die aktive Zeit per Session-ID mit übergeben? Ich muß leider zugeben, dass ich das noch nie gemacht habe. Prinzipiell halte ich aber das Speichern und Auslesen aus der Datenbank für die bessere und sichere Methode. Außerdem kann ich nebenbei das Verhalten meiner User damit auch ein wenig "überwachen"... Sprich, Erkenntnisse über das Surfverhalten gewinnen... kann man natürlich positiv und negativ sehen - aber das ist auch nicht Thema dieses Threats

  Profil   Editieren   Zitieren
FrediL
Fachidiot
Threadstarter




Beiträge: 101

Ja, ist das mit dem Logout denn nicht wichtig? Ich meine die Session muss doch gelöscht werden, oder? Was passiert eigentlich, wenn man sich nicht ausloggt?

---
ergebniswelt.com -> Fußballergebnisse und mehr

  Profil   Website   Editieren   Zitieren
 

Antworten
Forum » PHP & MySQL » PHP: Login per $_SESSION

Aktuelle Beiträge zur Hilfe im Forum für Homepage - PHP: Login per $_SESSION im Forum Homepage Hosting AntwortenLetztes Posting
Gambling
in "PHP & MySQL"
1 19.06.2020 19:48 von hasmpil
Casino online
in "PHP & MySQL"
6 11.06.2020 15:20 von Dino9595
Poolpumpe
in "PHP & MySQL"
1 09.06.2020 16:34 von Baumwerk
Rangliste (Ohne Mysql) (Kompliziertes Ordner System)
in "PHP & MySQL"
2 05.06.2020 14:06 von Rogantinno
SEO-Dienste
in "PHP & MySQL"
2 09.04.2020 09:53 von Heuzutag
CMS für Online Shop
in "PHP & MySQL"
25 23.08.2019 10:37 von Againg
Fehlermeldung beim Importieren der Datenbank in phpmyadmin
in "PHP & MySQL"
0 02.08.2019 22:14 von iFuchs
Regestrierungproblem
in "PHP & MySQL"
3 28.11.2018 13:20 von norbertofahey
PHP Datum ausgeben?
in "PHP & MySQL"
1 19.10.2018 10:04 von Klaus1973



Besucher : 6759512    Heute : 33     Gestern : 1840     Online : 47     15.7.2020    0:40      1 Besucher in den letzten 60 Sekunden        
alle 60.00 Sekunden ein neuer Besucher
Nach oben