- Home
- Categorie
- Coding e Sistemistica
- PHP
- sessioni php area riservata
-
Si può fare, ma io ti avevo cosngiliato di creare una tabella apposita... che secondo me è molto meglio, altrimenti quando ogni utente scrive 20 post la tabella ha 40 campi... che non è il massimo sia in termini di prestazioni che di gestione....
-
ok ora però ho un problema [PHP]require('config.php');
$user = $_POST['user'];
$email = $_POST['email'];
$pass = $_POST['pass'];
if ($user == "Tizio") {$id = "1";}
elseif ($user =="Caio") {$id = "2";}
if (mysql_num_rows(mysql_query("SELECT mail FROM utenti WHERE mail = '$email' LIMIT 1")) == 1)
{
// Crypt della password per garantire una miglior sicurezza
$pass = md5($pass);// Query per l'inserimento dell'utente nel database $strSQL = "UPDATE utenti SET password=$pass WHERE id=$id;"; mysql_query($strSQL) OR die("Errore 003, contattare l'amministratore ".mysql_error());}
[/PHP]
come faccio a creare un modulo per il recupero password?? questo è quello che ho fatto... ma non parte nemmeno
in pratica vorrei chiedere al db se l'email specificata nel form esiste e se è associata all'id dell'utente specificato nel form.
se passa il controllo deve criptare la pwd e con UPDATE aggiornare il campo...... come faccio???
Ciao e grazie a tutticry:
-
UPDATE utenti SET password='$pass' WHERE id='$id';
la query non era giusta...
-
Query aggiustata ma ancora non funziona:
[PHP]<form action="" method="post"><input name="user" type="text" id="user" value="Nome Utente" onfocus="if(this.value=='Nome Utente') this.value='';" /><br />
<input name="pass" type="password" id="pass" value="Password" onfocus="if(this.value=='Password') this.value='';" /><br />
<input name="mail" type="text" id="mail" value="Em@il" onfocus="if(this.value=='Em@il') this.value='';" /><br />
<input name="recupera" type="submit" value="recupera" /></form><br />
<?
require('config.php');
$user = $_POST['user'];
$email = $_POST['email'];
$pass = $_POST['pass'];
if ($user == "Moherboard") {$id = "1";}
elseif ($user =="Ciao") {$id = "2";}
if (mysql_num_rows(mysql_query("SELECT mail FROM utenti WHERE mail = '$email' LIMIT 1")) == 1) die('bla');
// Crypt della password per garantire una miglior sicurezza
$pass = md5($pass);// Query per l'inserimento dell'utente nel database $strSQL = "UPDATE utenti SET pass='$pass' WHERE id='$id';"; mysql_query($strSQL) OR die("Errore 003, contattare l'amministratore ".mysql_error());
?>[/PHP]
dove è l'errore?
-
viene mostrato qualke errore?
-
no, ma non aggiorna la pwd....
-
metti questo e vedi cosa stampa...
[php]
<form action="" method="post"><input name="user" type="text" id="user" value="Nome Utente" onfocus="if(this.value=='Nome Utente') this.value='';" /><br />
<input name="pass" type="password" id="pass" value="Password" onfocus="if(this.value=='Password') this.value='';" /><br />
<input name="mail" type="text" id="mail" value="Em@il" onfocus="if(this.value=='Em@il') this.value='';" /><br />
<input name="recupera" type="submit" value="recupera" /></form><br />
<?
require('config.php');
$user = $_POST['user'];
$email = $_POST['email'];
$pass = $_POST['pass'];
if ($user == "Moherboard") {$id = "1";}
elseif ($user =="Ciao") {$id = "2";}
if (mysql_num_rows(mysql_query("SELECT mail FROM utenti WHERE mail = '$email' LIMIT 1")) == 1) die('bla');
// Crypt della password per garantire una miglior sicurezza
$pass = md5($pass);// Query per l'inserimento dell'utente nel database
echo $id;
$strSQL = "UPDATE utenti SET pass='$pass' WHERE id='$id'";
mysql_query($strSQL) OR die("Errore 003, contattare l'amministratore ".mysql_error());?>
[/php]
-
Prova a togliere il ; dalla query.
$strSQL = "UPDATE utenti SET pass='$pass' WHERE id='$id'";
-
Ciao ragazzi sono ancora io, quel diavolo di recupero password mi sta facendo ancora impazzire.... non modifica quello stramaledettissimo campo...
come faccio??
-
letto il post 46?
-
si anzi copia-incollato il post #46!!!
Ciao e grazie
-
ecco allora appena lanci lo script ti deve dare un numero... se non lo da dovrebbe darti un errore notice(se il php.ini non nasconde questi tipi di errore, di default sono nascosti)
se non mostra il numerino, l'errore sta qua
[php]
if ($user == "Moherboard") {$id = "1";}
elseif ($user =="Ciao") {$id = "2";}
[/php]