Newsgroup: it.comp.www.php
Titolo: password('$password')...nn funziona?!?!?

Ciao a tutti, e da tanto ke nn postavo su questo news...cmq...ho bisogno di
una mano..ho un esame venerdi e devo riuscire a criptare le pass in un
database mysql... accoppiato al php....il criptagio va a buon fine il
problema nasce quando vi è l'identificazione..faccio il confronto criptando
la password inserita....e paragonandola con quella criptata depositata nel
database....uso la funzione:
mysql_query("select username from $table where user='$login' and
password=password('$password')");
ebbene nn funziona!!!..ma perke se nn vado errato la grammatica è esatta!!??
Vi prego aiutatami!!!!!!!!!
Davide

errate parentesi :-)
select * from utenti where password('$variabile')=campo_giā_criptato
:-)
J

errata corrige :-)
select * from utenti where
password_nel_db=password('$variabile_password_del_form');
Però occhio che tu hai delle virgolette di troppo
J

Forse l'errore deriva dal fatto che hai usato per una colonna della tabella
la parola pasword, che è riservata.
Comunque che errore ti dà? Ti dice solo che non hai risultati oppure ti dà
errore nella sintassi?

 wrote in
news:9un6a1$t3p$
2...@newsfeed.cineca.it
: 

a me è successo così poi mi son reso conto che avevo impostato un campo 
varchar(15) invece l'algoritmo di crypt ha bisogno di char (o varchar) 
(16)...
ho sbaglio??
+--------------------------+
| password('achshwidhaja') |
+--------------------------+
| 2649002511c33a86         | //16 char
+--------------------------+
+------------------+
| password('x')    |
+------------------+
| 606706156665cd86 |   //16 char
+------------------+
+------------------+
| password('1')    |
+------------------+
| 606717496665bcba | //16
+------------------+
+----------------------------------+
| password('password riservata 1') |
+----------------------------------+
| 4c4c4a4f38cd3152                 | //16!!
+----------------------------------+


Colonna password non puo' andare.
Parola riservata (manual mysql 6.1.6).
per il resto ok.
Prova magari le query prima con mysql inlinea (dal prompt).


Non ci sono virgole in troppo, ne basse ne alte...

"J" <jj@thecloud.o> ha scritto nel messaggio
news:9umc7j$b9t$1...@serv1.iunet.it...

Io inserisco le pswd nel db criptate con md5()... il fatto è che poi nn
posso ritornare al valore originale...
è meglio usare la funzione password di mysql ?
Alex

 č meglio usare la funzione password di mysql ?
Boh. Penso sia questione di comoditą.


Puo' essere anche un problema di spazi.
Ti conviene estrarre la password criptata per quel login ($pass_DB)
Prendere la password che ti passa il form dell'utente ($pass_utente)
e fare cosi:
$pass_utente=md5($pass_utente);
$pass_DB=rtrim($pass_DB);
if ($pass_DB == $pass_utente){
......
}
prova non si sa mai..
--
Xantos
m.mo...@NlOiSbPeArMo.it
 per rispondermi basta non urlare!

 Puo' essere anche un problema di spazi.
Password di mysql scarta gia' i spazi...
prova in mysql:
SELECT password('ciao')AS a , password('c i a o')AS b, password('     c i a
o     ')AS c;
i tre campi di ritorno sono uguali
per testare il problema (oltre a quello della colonna password come parola
riservata [cmq. dovrebbe andare]) si potrebbe provare questa query:
select Password,Password('pippo') from user where User='utenteDaTestare';
Cosi vedi i due valori nei due campi ritornati.
Un altro utile suggerimento:
$rslt=mysql_query("SELECT [...]") or die(mysql_error()); // visualizza
errori

 }
password di mysql non coincide con l'hash di md5.
in mysql c'è una funzione md5 apposta (che ritorna 32 caratteri).
password di mysql ne ritorna 16 e onestamente credo che bastino!!
(io lo uso ed è validissimo, anche mysql lo usa come algoritmo interno di 
autenticazione)

 ha scritto nel messaggio
news:9un6a1$t3p$2...@newsfeed.cineca.it...

Non mi da risultati!
davide

> Non mi da risultati!
Fossi in te proverei a cambiare nome alla colonna, puoi chiamarla ad es
chiave.

 wrote in message
news:%uJP7.249925$sq5.12...@news.infostrada.it...

e mysql_error() hai provato?
$rslt=mysql_query("SELECT ......") or die (mysql_error());

 ha scritto nel messaggio
news:sRxP7.247682$sq5.12...@news.infostrada.it...


 A Presto!
Ti tieni il 'segreto' per te?
Senza spiegare quale era il problema?
Nessuno puo' approfittare della tua saggezza?
Mah...