PW vergessen Funktion

Dolphon

Erfahrenes Mitglied
Moin.
Ich bin gerae dabei mein PW Vergessen Skript zu verbssern, so das man erst einen Aktivierungslink anklicken muss, damit sich das PW ändert.
Habe aber mit diesem Link ein kleines Prob.
Erstmal der Code:

PHP:
if($pwvergessen) //ueberprueft ob der submit button gedrückt wurde
{ 
                 
$anfrage = mysql_query("SELECT user FROM handwerker WHERE user= '". $_POST['user'] ."'"); 
$anzahl = mysql_num_rows($anfrage); 
if($anzahl != 1) 
{ 
echo "<center><font face=\"verdana\" size=\"1\" color=\"red\"><b>Dieser Benutzername existiert nicht</b></font></center>"; 
} 
else 
{   


  $sqlkommando = "SELECT id, email FROM handwerker WHERE user= '". $_POST['user'] ."'";
  
  $result = mysql_query($sqlkommando) or die("Error: " . mysql_error()); // Kommando 'sqlkommando' ausfuehren
     


while($row = mysql_fetch_object($result))
    {
   
   $an = $row->email;
   $userid = $row->id;
    }


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; 
}



$passwort = getpass(); // neues PW

$sqlkommando2 = "INSERT INTO pwvergessen(userid, passwort) VALUES ('$userid','md5('$passwort')')";
                  mysql_query($sqlkommando2) or die("Error: " . mysql_error()); 


    
$betreff = "Passwort vergessen Funktion";
$text = "Hier ist ihr neues Passwort: $passwort";
$text = "Bevor Sie Ihr neues Passwort benutzen können, müssen sie es unter folgenden Link aktivieren:";
$text = " h**p://www.xxx.de/templates/pwvergessenaktiv.php?user=$userid&id=$idpwvergessen ";
$from = "XXX";

mail($an, $betreff, $text, $from);
echo "Ihr neues Password wurde Ihnen gerade zugesandt!";

}}

?>
Das Problem ist, das in der zugesanden E-mail in dem Link die id ausgegeben werden soll, welche in der Tabelle "pwvergessen" steht. nun weiß ich aber nicht wie ich diese id dort hinbekomme, da sie erst vorher eingetragen wird, und ich weiß nicht ob die schon drinsteht, wenn ich direckt danach wieder eine Abfrage nach der id mach-
 
danke für die Hilfe.

Habs jetzt mal so gemacht:

$idpwvergessen = mysql_insert_id();

Mal sehn obs später , wenn alles fertig ist.
 
Zurück