Einfaches Login erstellen ?

Code46

Erfahrenes Mitglied
Hi Leute,

Habe mal wieder ein Problem. Habe vor paar Tagen mit PHP angefangen, jedoch check ich das noch nicht so ganz. Wenn ihr mir helfen könntet würde ich mich sehr freuen.

Hier ist mein Code für mein Login:

Mein Code gibt mir immer den selber Fehler aus, undzwar "Wrong Username or Password". Woran kann das liegen ?

Code:
<?php 

include 'dbc.php';

$err = array();

if (isset($_POST['doLogin']))
{

$username=$_POST['user_name'];
$password=$_POST['pwd'];

// Verstehe das hier nicht ganz ? Wozu ist dies nötig ?
$username = stripslashes($username);
$password = stripslashes($password);
$username = mysql_real_escape_string($username);
$password = mysql_real_escape_string($password);

$sql="SELECT * FROM users WHERE user_name='$username' and pwd='$password'";
$result=mysql_query($sql);

$count=mysql_num_rows($result);


if($count==1){

	header("location:myaccount.php");
}
else 
	{
	$err[] ="Wrong Username or Password";
}

}
 
Naja, in erster Linie würde ich sagen das deine Logindaten die du eingibst Falsch sind, also nicht mit den Einträge in der Datenbank übereinstimmen.
Was sein kann das das Passwort in der DB als MD5 - Hash gespeichert wird, du aber in in dem Quellcode keine MD5 - Hash von dem Password erzeugst.
 
mysql_real_escape ist wichtig, damit der User deine Queries nicht manipulieren kann. Lässt du das weg, so lässt sich Schadcode mit übergeben.
 
@Timestamp also wie ich es oben gemacht habe ?

$username=$_POST['user_name'];
$password=md5($_POST['pwd']);
$username = stripslashes($username);
$password = stripslashes($password);
$username = mysql_real_escape_string($username);
$password = mysql_real_escape_string($password);
 

Neue Beiträge

Zurück