Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Kodowanie haseł w MySQL, Problem z porównywaniem zakodowanych wartości
Wujek01
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 1.06.2006

Ostrzeżenie: (0%)
-----


Witam
Mam problem z weryfikacją. Hasło oraz login przechowywane są w tabeli. Oczywiście login jest zwykłym textem typu varchar natomiast hasło też jest typu varchar jednak zakodowane funkcją PASSWORD().
Sprawdzanie odbywa się przez:
  1. <?php
  2. $zapytanie = "select count(*) FROM tabela WHERE nazwa='$name' and haslo=PASSWORD('$haslo')";
  3. ?>

Po localhoscie wszystko działa idealnie jednak problem zaczyna sie po wczytaniu bazy na serwer. Niemogę się zalogować na strone gdyż hasło się nie zgadza. Ręczna zmiana haseł bezpośrednio na serwerze przez phpMyAdmina nie pomaga (bez szyfrowania hasła oczywiście wszystko działa). Baze mam na yoyo.pl (ver bodaj MySQL 5.0.20). Co może być nie tak (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Jak inaczej jeszcze można szyfrować hasła w tabeli. Próbowałem funkcją md5() ale sytuacja jest identyczna.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Jarod
post
Post #2





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

Ostrzeżenie: (0%)
-----


  1. $zapytanie = "select count(*) FROM tabela WHERE nazwa=''.$name.'' and haslo=PASSWORD('$haslo')";


Ja bym to zmienił na

  1. $zapytanie = 'select count(*) FROM tabela WHERE nazwa='.$name.' and haslo=PASSWORD(''.$haslo.'')';


Ten post edytował J4r0d 11.06.2006, 20:57:39
Go to the top of the page
+Quote Post
FiDO
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

Ostrzeżenie: (0%)
-----


Cytat(J4r0d @ 8.06.2006, 22:53 ) *
  1. $zapytanie = "select count(*) FROM tabela WHERE nazwa='$name' and haslo=PASSWORD('$haslo')";


Ja bym to zmienił na

  1. $zapytanie = 'select count(*) FROM tabela WHERE nazwa='.$name.' and haslo=PASSWORD(''.$haslo.'')';

Funkcji PASSWORD() nie powinno sie uzywac do 'celow wlasnych', jest ona przeznaczona w zasadzie na wewnetrzne potrzeby MySQL'a, jest o tym w manualu napisane.
Lepiej uzyc MD5 albo nawet SHA1 (tez jest wbudowana).
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 03:49