[PHP & MySQL]Passwort vergessen, USERNAME & EMAIL vergleuchen

cille

Erfahrenes Mitglied
Hi ho,
erweiter gerade mein login script mit Passwort vergessen und neues senden
habe ein
Passwort generator:
PHP:
<?php
function getpass() {
    $newpass = "";
    $laenge=10;
    $string="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";

    mt_srand((double)microtime()*1000000);

    for ($i=1; $i <= $laenge; $i++) {
        $newpass .= substr($string, mt_rand(0,strlen($string)-1), 1);
    }
    
    return $newpass;
} 
?>

Aber ich kriege es nicht hin, die daten zu vergleichen von einem formular zur DB
hier mal was ich probiert habe
PHP:
<?php
	include("config.php");

	$sql = "SELECT username, email FOM user WHERE username=".$_POST['username'];
	$result = mysql_query($sql);
	$row = @mysql_fetch_assoc($result);

	if (!empty($_POST["username"]) && !empty($_POST["email"])) {
		if ($row["username"] == $_POST["username"] && $row["email"] == $_POST["email"]) {
			echo "User vorhanden";
		}		
	} else {
		echo "Bitte Username und Email angeben!";
	}
}
?>

Aber leider ohne erfolg,
würde mich wiedermal ^^ auf Hilfe freun.

mfg,
cille
 
Probier es mal mit einfachen '...Ansonsten gib mal alle vier Variablen aus. Wenn diese auch gleich sind fragste mal aus der DB ab, und zwar alles wo Username und EMail mit dem eingegebenen übereinstimmen. Kriegst du einen Datensatz zurück, ist ok, wenn nicht gibt es den nicht. Sollte schon irgendwie gehen ;)
 
gleich mal Probieren,
aber sonst ist alles richtig?

[EDIT]
Habe ein fehler gefunden, erstens hab ich
FOM anstatt FROM
geschrieben, und dann kommt dieser fehler, wenn ich mein benutzernamen und email eingebe:
Code:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\Programme\xampp\htdocs\projekte\Webdesign\artweise\model\show\lost_pw.php on line 42

Mit $row = mysql_fetch_assoc($result) or die(mysql_error()); :
Code:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@gmx.de' at line 1

Weis nicht wie ich dieses Problem beheben kann,
weis da vielleicht einer bitte bescheit?

mfg, cille
 
Zuletzt bearbeitet:
warscheinlich liegts an den einfachen ', mach einfach mal wo du doppelte Anführungszeichen hast einfache hin. Sonst sollte alles stimmen.
 
Aender mal das
PHP:
$sql = "SELECT username, email FOM user WHERE username=".$_POST['username'];
in das
PHP:
$sql = "SELECT username, email FROM user WHERE username='".$_POST['username']."'";
 
Zurück