PHP-Login

tenso

Grünschnabel
Moin,
erstelle grad nen einfachen login, nur sobald man einen Benutzer + Password eingibt, den es NICHT in der Datenbank gibt t es nicht mehr.
PHP:
if(isset($login) && $login=="yes") {
 if(isset($username) && $username!="" && (isset($password)) && $password!="") {
  $username=stripslashes($username);
  $password=stripslashes($password);
  $usercheck="SELECT login.id, login.username, login.password FROM login WHERE login.username= '".$username."' AND login.password= '".$password."'";
   mysql_select_db('DoVer', $db_link) or die(mysql_error());
   print_r($_POST);
  $result = mysql_query($usercheck) OR die(mysql_error());
  $rowcount= mysql_num_rows($result) OR die(mysql_error());
  if($rowcount==1) {
   while ($fir = mysql_fetch_assoc($result)) {
   foreach($fir as $key=>$value){
    $$key= $value;
   }
  }
  $userid=$id;
  session_start();
  setcookie("ID",session_id(),Time()+86400);
  setcookie("NAME", $username,Time()+86400);
     mysql_select_db('DoVer', $db_link) or die(mysql_error());
  $insert="UPDATE login SET sessid='".session_id()."' WHERE login.id = '".$userid."'";
  mysql_query($insert) OR die(mysql_error());
  #header('LOCATION: ./');
   } else {
	$error="Fehler";
   }   

 } else {
 $error="Fehler";

 }
}
Also bei $result kommt wennn kein Datensatz gefunden wird "Resource id #6", was ja auch stimmt, aber da ich frage ob rowcount==1 ist müsste er ja in den "else-Teil" gehen, was er nicht tut.
Bekomme auch keine Fehlermeldungen oder ähnliches.
Hoffe ihr findet den fehler.
MfG
tenso
 
Oh stimmt. Ich hatte mich mit den Klammern verschaut. Versuch dir Abfrage mal auf $rowcount >= 1. So prüfe ich immer, wobei ich sicher sein muss, dass maximal ein Datensatz von der DB zurückkommt.
 
//leider kein erfolg.
//wenn ich $rowcount ausgebe, kommt nichts, nichtmal'ne 0

Irgenwie lächerlich, aber ich hab den ganz gleichen Block zum einloggen von einem andren login kopiert, bei dem anstat $usercheck -> $sql dransteht....
 
Zuletzt bearbeitet:
Zuletzt bearbeitet:
Zurück