recupero.php
Codice PHP:
<?php
/* PARTE DELL’INVIO EMAIL. Si controlla che l'email (=user) sia presente nel db. Estraggo quindi id e password dell'utente e li unisco in un'unica stringa ($hash) da passare nel $_GET. La stringa su cui cliccare è inviata per email, come conferma, e rinvia al file “nuova_password.php”. */
if(isset($_POST['invia'])){
$errore=0; //variabile di controllo errori (se rimane a 0 non ci sono errori)
if($_POST['email']==""){
$errore=1;
}else{
$result=mysqli_query("select id, pass from users where email='".$_POST['email']."' limit 0,1", $db);
if(mysql_num_rows($result)>0){
$row=mysqli_fetch_array($result);
//l’hash ci servirà per recuperare i dati utente e confermare la richiesta
//la password nel database si presume criptata, con md5 o altro algoritmo
//al posto di questi due dati, se ne possono usare altri legati all’utente, purché univoci
$hash=$row['pass']."".$row['id'];
}else
$errore=1;
}
//se non ci sono stati errori, invio l’email all’utente con il link da confermare
if($errore==0){
$header= "From: sitoprova.96.lt <giuliopulizzi@gmail.com>\n";
$header .= "Content-Type: text/html; charset=\"iso-8859-1\"\n";
$header .= "Content-Transfer-Encoding: 7bit\n\n";
$subject= "sitoprova.96.lt - Nuova password utente";
$mess_invio="<html><body>";
$mess_invio.=" Clicca sul <a href=\"http://sitoprova.96.lt/nuova_password.php?hash=".$hash."\">link</a> per confermare la nuova password.<br /> Se il link non è visibile, copia la riga qui sotto e incollala sul tuo browser: <br /> http://sitoprova.96.lt/nuova_password.php?hash=".$hash." ";
$mess_invio.='</body><html>';
//invio email
if(mail($_POST['email'], $subject, $mess_invio, $header)){
echo "<div class=\"campo_contatti\" style=\"margin-left: 20px; height: 300px\">";
echo "Email inviata con successo. Controlla la tua email<br /><br />";
echo "</div> <div class=\"clear\"></div>";
unset($_POST); //elimino le variabili post, in modo che non appaiano nel form
}
}
}
?>
<html>
<head><title>Recupero Pass</title>
</head><body>
<form action="" method="post" id="login">
<div class="campo_contatti">
<div class="voce_campo">Inserisci la tua email per ricevere la nuova password</div>
<input type="text" name="email" value="<?=@$_POST['email']?>" class="campo" />
</div>
<div class="clear"></div>
<div class="campo_contatti">
<input type="submit" value="invia" name="invia" />
</div>
<div class="clear"></div>
</form>
</body>
</html>
una volta inserito nell'aposito campo l'email e premuto il tasto invia mi saltano fuori questi 2 errori :
Warning: mysqli_query() expects parameter 1 to be mysqli, string given in /home/u686410779/public_html/recupero.php on line 10
Warning: mysql_num_rows() expects parameter 1 to be resource, null given in /home/u686410779/public_html/recupero.php on line 12
potreste aiutarmi a risolvere? grazie in anticipo.