Skocz do zawartości

Funkcja password -problem


raf_79

Rekomendowane odpowiedzi

Witam

Mam skrypt logowania wyskorzystujący dane zapisane w bazie.

Login jest normalnie a hasło zaszyfrowane przy pomocy funkcji PASSWORD.

Jak dodaje użytkownika to phpmyadmin (2.10.0-rc1 mysql -4.1.11) fajnie to sobie szyfruje ale jak chce wykonać takie zapytanie w phpmyadminie

SELECT * FROM uzytkownicy WHERE haslo = PAASWORD ('haslo')

to nic mi nie zwraca.

Możecie sprawdzić czy to działa ??

Pozdrawiam i z góry dzięki za odpowiedź

Rafał

Odnośnik do komentarza
Udostępnij na innych stronach

Jezeli zapytanie nie zwraca wyników to znaczy ze warunek WHERE nie jest spełniony.

sprawdz co zwraca funkcja PAASWORD ('haslo')

sprawdz czy jest wiersz z takim zakodowanym hasłem.

Obstawiam ze gdzies jest blad i inne hasło zapisujesz do bazy a innego szukasz :D

Odnośnik do komentarza
Udostępnij na innych stronach

sorki literówka się wkradła ale tutaj w skrypcie jest oki

Dokładnie to to hasło to biorę z pola z formularza i tamten fragment wygląda PASSWORD('$_POST[['haslo'])

Nie wiem czy o takie sprawdzenie chodzi ale :

SELECT PASSWORD( 'haslo' ) , haslo FROM uzytkownicy

to to hasło inaczej koduje niż to co koduje gdy sie je zapisuje tylko dlaczego i jak zrobic żeby było dobrze :)

Odnośnik do komentarza
Udostępnij na innych stronach

Może problem jest w łączeniu stringów?

"SELECT * FROM `uzytkownicy` WHERE `haslo` = PASSWORD(".$_POST['haslo'].")"

albo

"SELECT * FROM `uzytkownicy` WHERE `haslo` = 'PASSWORD(".$_POST['haslo'].")'"

albo przed zapytaniem przypisz hasło do zwykłej zmiennej, aby w zapytaniu mysql nie używać tablicy $_POST['haslo'] tylko np $_haslo

.

Odnośnik do komentarza
Udostępnij na innych stronach

wszytko to juz próbowałem i nic :) szczerze mówiąc napisałem takie coś już kiedyś i działało i przekopiowałem to sobie na żywca i przestało działać ;) nic dzięki za pomoc a ja będę szukał miejsca co jest źle, pewnie to jakaś mała pierdoła no nic jeszcze raz dzięki :)

Pozdrawiam

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 tygodnie później...

Ja też kiedyś miałem ten sam problem.

Zmieniłem kodowanie z passwordd na md5 i ... zadziałało :P

"SELECT * FROM uzytkownicy WHERE haslo = md5('haslo')";

Musisz tylko pamiętać aby przy rejestracji też kodować w md5, i pole do przechowywania hasła w bazie musi mieć długość - 32 znaki.

Photoshop - szczegółowe tutoriale - Photoshop - tutoriale i filmy dla początkujących.
Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności