Salve ragazzi,
il problema è questo. Ho creato un form che serve qualora un utente perda i dati in fase di registrazione. In particolare la password. Ho pensato ad un form di recupero nel quale inserire l'indirizzo email ove mandare la password temporanea.

Il form rimanda ad un file php che ho chiamato recuperodati. Ecco il codice:

Codice PHP:
<?php
if(!isset($_POST['submit']))
{
    
header("Location: [url]http://www.listafacile.com[/url]");
    die;
    exit;
}
//varie info per email
$oggi date("j F Y G:i");
$sito "http://www.listafacile.com";
$ip "$_SERVER[REMOTE_ADDR]";
$browser "$_SERVER[HTTP_USER_AGENT]";
$soggetto "Modulo da $sito";

if(
trim($_POST['mail']) == "")
{
print 
"La mail è obbligatoria
<a href=\"formregistraz.php\">indietro</a>
"
;
}
else
{
$mail htmlentities(strip_tags($_POST['mail']));

// Imposto la lunghezza della password a 10 caratteri
$lung_pass 10;

// Creo un ciclo for che si ripete per il valore di $lung_pass
for ($x=1$x<=$lung_pass$x++)
{
  
// Se $x è multiplo di 2...
  
if ($x 2){

    
// Aggiungo una lettera casuale usando chr() in combinazione
    // con rand() che genera un valore numerico compreso tra 97
    // e 122, numeri che corrispondono alle lettere dell'alfabeto
    // nella tabella dei caratteri ASCII
    
$mypass $mypass chr(rand(97,122));

  
// Se $x non è multiplo di 2...
  
}else{

    
// Aggiungo alla password un numero compreso tra 0 e 9
    
$mypass $mypass rand(0,9);

  }
}
            
                                                
// settare qui quello che apparirà nel campo from della email
                                
$from_mail "info@iso-consulenze.info";
                                
// invio della mail contenente la passwd e gli altri dati
                                     
$To="$mail";
                                     
$Headers ="From: $from_mail";
                                     
$Soggetto="[[url]www.iso-consulenze.info[/url]] I tuoi dati di accesso";
                                     
$Corpo.="Ciao!\n\n";
                                     
$Corpo.="     Sono il programma Sendmail di [url]http://www.iso-consulenze.info[/url]";
                                     
$Corpo.="     Questa è la tua nuova password:\n\n";
                                     
$Corpo.="     La tua password: $mypass\n\n";
                                     
$Corpo.="     A presto!\n\n";
                                     
$Corpo.="--------------------------------------------\n";
                                     
$Corpo.="$from_mail\n";
                                     
$Corpo.="http://www.iso-consulenze.info\n";
                                     
$Corpo.="--------------------------------------------\n";
                                     
mail($To$Soggetto$Corpo$Headers);

                                    echo 
"ti è stata inviata una mail all'indirizzo $mail con i tuoi dati";


}
mysql_close();
?>
Lo script funziona, la password viene creata ed inviata. Il problema qual'è? Che tale password temporanea dovrebbe andare a sostituirsi, nel database, a quella originaria inserita dall'utente in fase di registrazione.

La tabella che immagazzina i dati in fase di registrazione è la seguente:

CREATE TABLE `utenti` (
`id` int(3) NOT NULL auto_increment,
`username` varchar(30) NOT NULL default '',
`password` varchar(34) NOT NULL,
`confermapassword` varchar(34) NOT NULL,
`nome` varchar(30) NOT NULL default '',
`cognome` varchar(30) NOT NULL default '',
`mail` char(255) NOT NULL default '',
`quesito` varchar(255) NOT NULL default '',
`risposta` varchar(255) NOT NULL default '',
`data` char(255) NOT NULL default '',
`ip` char(15) NOT NULL default '',
PRIMARY KEY (`id`),
UNIQUE KEY `id` (`id`),
KEY `id_2` (`id`)
)

Come posso integrare il file php che ho postato sopra in modo che la password temporanea e casuale sostituisca quella impostata in origine? (poi chiaramente l'utente avrà la possibilità di immettere una nuova password).

Pensavo ad un UPDATE, ma come posso associare la password temporanea all'utente specificato? Insomma, come posso pescare l'username dell'utente che chiede la nuova password e poi associargli quella temporanea?

Grazie mille