Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql] kodowanie hasła
Chemiq
post
Post #1





Grupa: Zarejestrowani
Postów: 105
Pomógł: 0
Dołączył: 16.07.2006

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


mam system rejestracji i logowania. jest w nim zapisywanie zakodowanego hasła i działa jak należy. problem zaczyna się gdy trzeba się zalogować. przyjrzałem się problemowi i doszedłem do wniosku że hasło mimo wszystko nie jest rozkodowywane. oto kod odpowiadający za odczytywanie zakodowanego hasła:
  1. $sql = "SELECT * FROM `uzytkownik` WHERE login = '$login' AND haslo = PASSWORD('$haslo')";
  2. $result = mysql_query($sql);

jak przy logowaniu wstawie zamiast normalego hasła to zakodowane to można się zalogować.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Chemiq
post
Post #2





Grupa: Zarejestrowani
Postów: 105
Pomógł: 0
Dołączył: 16.07.2006

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


właśnie od samego początku chodzi mi o odblokowanie tego hasła. jest ono zakodowane od momentu rejestracji.
  1. <?php
  2. $_SESSION['login'] = $login; //wartość pobrana z pola login w formularzu
  3. $_SESSION['haslo'] = $haslo_wpisane; //wartość pobrana z pola haslo w formularzu
  4.  
  5. dbConnect("yugiohrpg"); 
  6.  
  7. $sql = "SELECT * FROM `uzytkownik` WHERE login = '$login' AND haslo = '$haslo'"; // tutaj jest pobierane ZAKODOWANE hasło
  8. $result = mysql_query($sql);
  9. ?>

może tak będzie łatwiej:
1. zmienna $haslo_wpisane to NIEZAKODOWANA wartość wpisana przez użytkownika w formularzu
2. zmienna $haslo to ZAKODOWANE hasło (zostało zakodowane przy rejestracji użytkownika poprzez funkcję PASSWORD) pobrane z bazy danych
Go to the top of the page
+Quote Post
mariuszn3
post
Post #3





Grupa: Zarejestrowani
Postów: 352
Pomógł: 0
Dołączył: 22.01.2006

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


Cytat(Chemiq @ 4.08.2006, 16:17 ) *
właśnie od samego początku chodzi mi o odblokowanie tego hasła. jest ono zakodowane od momentu rejestracji.
  1. <?php
  2. $_SESSION['login'] = $login; //wartość pobrana z pola login w formularzu
  3. $_SESSION['haslo'] = $haslo_wpisane; //wartość pobrana z pola haslo w formularzu
  4.  
  5. dbConnect("yugiohrpg"); 
  6.  
  7. $sql = "SELECT * FROM `uzytkownik` WHERE login = '$login' AND haslo = '$haslo'"; // tutaj jest pobierane ZAKODOWANE hasło
  8. $result = mysql_query($sql);
  9. ?>

może tak będzie łatwiej:
1. zmienna $haslo_wpisane to NIEZAKODOWANA wartość wpisana przez użytkownika w formularzu
2. zmienna $haslo to ZAKODOWANE hasło (zostało zakodowane przy rejestracji użytkownika poprzez funkcję PASSWORD) pobrane z bazy danych

No dobrze.. ale jaki jest Twój cel.. z tego co wcześniej pisałeś rozumiem, że chcesz poprostu autoryzować dane wpisane przez użytkownika do formularza i albo go zalogować albo nie (jeśli podał nie właściwe dane).

Natomiast powyżej piszesz jakieś sprzeczne rzeczy.. Twoje zapytanie wcale nie pobiera zakodowanego hasła do zmiennej hasło.. sprawdź dokładnie jaka jest konstrukcja zapytania SELECT.. to co wpisuje się po WHERE to już tylko dyktowanie warunków jakie muszą spełniać dane, które chcesz wyciągnąć z bazy.

Najprawdopodobniej chodzi Ci o coś takiego:
  1. SELECT * FROM `uzytkownik` WHERE login = '$login' AND haslo = PASSWORD('$haslo_wpisane')

Powyższe zapytanie zwróci Ci wszystkie rzędy z tabeli użytkownik, które będę miały pola login i haslo odpowiadające wartościom wpisanym w formularzu.
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 16.10.2025 - 00:03