Loginsystem

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
AmShaegar
Mitglied
Beiträge: 408
Registriert: 09.07.2004 17:33

Loginsystem

Beitrag von AmShaegar »

Hallo Community,
Ich habe mich an einem Login für eine Allyinterne Spielerkartei versucht. Allerdings habe ich ein Problem: Wenn man sich eingeloggt hat und danach zurück auf die Loginseite geht kann man einen beliebigen Benutzernamen eingeben, selbiges mit dem Passwort, und man kann sich trotzdem einloggen, sofern man den Browser nicht geschlossen hatte, da ich mit Sessions arbeite... wie kann ich das verhindern?

Code: Alles auswählen

<?php
session_start();

if(!isset($_SESSION['pw']))
  {
  $pw = $_POST['passwd'];
  $pw = md5($pw);
  $user = $_POST['login'];
  if($pw == "md5-passwd" and $user == "user")
    {
    $_SESSION['pw'] = $pw;
    $_SESSION['user'] = $user;
    }
  }
  
if(isset($_SESSION['pw']) and isset($_SESSION['user']))
  {
  $log = "1";
  }

if($log != "1")
  {
  echo '<meta http-equiv="refresh" content="0; URL=index.php?login=failed">';
  }
else
  {
  ...
Die Sache mit dem $log dient nur zu meiner eigenen Übersicht.
Scoutman
Mitglied
Beiträge: 278
Registriert: 11.02.2004 17:15
Wohnort: .at

Beitrag von Scoutman »

wenn ich mir das so anschaue vermute ich eher wenn du nochmal irgendwelche daten abschickst, das script das ignoriert und du einfach noch immer mit den alten daten eingeloggt bist.
KEIN Support per PM!!!
AmShaegar
Mitglied
Beiträge: 408
Registriert: 09.07.2004 17:33

Beitrag von AmShaegar »

eben, das ist das Problem...
Ich habe es auch schon anders versucht, aber ich schaff's nicht. Ich weiß nicht, wie ich es anders umsetzen soll. Dafür habe ich schon ewig gebraucht.
Scoutman
Mitglied
Beiträge: 278
Registriert: 11.02.2004 17:15
Wohnort: .at

Beitrag von Scoutman »

du könntest wenn du eingeloggt bist die eingabefelder ausblenden lassen und nur noch einen logout button anzeigen lassen.
KEIN Support per PM!!!
AmShaegar
Mitglied
Beiträge: 408
Registriert: 09.07.2004 17:33

Beitrag von AmShaegar »

Klasse Idee.
Schonmal ne Möglichkeit...
Hat jemand vielleicht noch nen anderen Einfall? Einen, bei dem ich was am Script andern muss, damit man sich nicht mit falschen Eingaben einloggen kann?
Scoutman
Mitglied
Beiträge: 278
Registriert: 11.02.2004 17:15
Wohnort: .at

Beitrag von Scoutman »

noch a idee:

Code: Alles auswählen

<?php
session_start();

if(!isset($_SESSION['pw']))
  {
  $pw = $_POST['passwd'];
  $pw = md5($pw);
  $user = $_POST['login'];
  if($pw == "md5-passwd" and $user == "user")
    {
    $_SESSION['pw'] = $pw;
    $_SESSION['user'] = $user;
    echo 'Erfolgreich eingeloggt.';
    }
  }
else{
  echo 'Du bist bereits eingeloggt.';   
}
.......
viel was anderes fällt mir dazu auch nicht ein, weil wirklich einloggen tut man sich ja nicht mehr.
KEIN Support per PM!!!
AmShaegar
Mitglied
Beiträge: 408
Registriert: 09.07.2004 17:33

Beitrag von AmShaegar »

Sorry ich glaub da ist was nicht ganz angekommen: Das ist der Anfang der Seite, auf die man kommt, wenn man sich eingeloggt hat. Man darf sich aber nicht einloggen, auf 'ne andere Seite gehen und nach fünf Minuten wieder einloggen, weil es beim zweiten Mal, wie schon gesagt, mit falschen Eingaben möglich ist. Und eben, das Einloggen mit den falschen Angaben muss ich verhindern...

Was macht es für einen Sinn dem Benutzer zu sagen, dass er bereits eingeloggt ist? Er soll ja mit falschen Eingaben nicht rein kommen in den geschüzten Bereich.
Antworten

Zurück zu „Coding & Technik“