Login

parafi

Mitglied
Moins

Ich habe bereits den Beitrag zum Login erstellen gelesen.

Nun habe ich in meinem File einen Fehler, der wie folgt lautet:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\workspace\webapps\autowebshop\login.php on line 21

Mein Code
PHP:
<?php  
// Session starten 
session_start (); 

// Datenbankverbindung aufbauen  
$connectionid = mysql_connect ("localhost", "root", "");  
if (!mysql_select_db ("meine_db", $connectionid))  
{  
  die ("Keine Verbindung zur Datenbank");  
}  

$sql = "SELECT ".  
    "user_id, user_name, vorname, nachname".  
  "FROM ".  
    "user".  
  "WHERE ".  
    "(user_name like '".$_REQUEST["user_name"]."') AND ".  
    "(password = '".md5 ($_REQUEST["password"])."')";  
$result = mysql_query ($sql);  

if (mysql_num_rows ($result) > 0)  
{  
  // Benutzerdaten in ein Array auslesen.  
  $data = mysql_fetch_array ($result);  

  // Sessionvariablen erstellen und registrieren  
  $_SESSION["user_id"] = $data["user_id"];  
  $_SESSION["user_nickname"] = $data["user_name"];  
  $_SESSION["user_nachname"] = $data["vorname"];  
  $_SESSION["user_vorname"] = $data["nachname"];  

  header ("Location: intern.php");  
}  
else  
{  
  header ("Location: formular.php?fehler=1");  
}  
?>
 
Wenn du dir mal die zusammengesetzte Datenbankabfrage ausgeben lässt, wirst du feststellen, dass der Tabellenbezeichner „user“ und das Schlüsselwort „WHERE“ zusammengeschrieben sind.
In MySQL-Fehler ist es sinnvoll, sich die MySQL-Fehlermeldung (mysql_error()) anzuschauen.
 
Vielen Dank!
Ich habe nun einfach bei "user ". einen Abstand eingefügt?

Wenn ich jedoch $sql ausgebe erhalte ich folgende Meldung.

SELECT user_id, user_name, vorname, nachname FROM user WHERE (user_name like '') AND (password = 'd41d8cd98f00b204e9800998ecf8427e'

Es ist also klar zu sehen, dass nichts beim user_name und passwort reingeschrieben wird. (PW steht nur etwas, weil das Ganze mit md5 geschützt wird.

Jedoch stimmen meine Variabeln..
PHP:
<form action="login.php" method="post">  
  Benutzername: <input type="text" name="user_name" size="20"><br>  
  Passwort: <input type="password" name="password" size="20"><br>  
  <input type="submit" value="Login">  
</form>
 
Zuletzt bearbeitet:
Zurück