Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]problem z haszowaniem md5
plurr
post
Post #1





Grupa: Zarejestrowani
Postów: 175
Pomógł: 12
Dołączył: 28.06.2007
Skąd: Bytom

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


  1. <?php
  2. function regUser($login, $imie, $nazwisko, $email, $haslo) //rejestracja 
  3. {
  4.  $db = conn();
  5.  $haslo = md5($haslo);
  6. $reg = $db -> query ("insert into ul_user (id_login, passwd, email, imie, nazwisko)
  7.  values ('$login', '$haslo','$email', '$imie', '$nazwisko')");
  8.  
  9.  if (!$reg)
  10.  throw new Exception ('Rejestracja nie powiodła się');
  11.  
  12.  return 1; 
  13. }
  14. ?>


napisalem funkcje ktora rejestruje uzytkownika, jednak mam problem z haszowaniem hasla. A mianowicie, cokolwiek uzytkownik wpisze w formularzu to w bazie i tak dodaje sie taki sam hasz. Moze to byc slowo "phpforum" lub 'elemelek' a i tak bedzie taki sam wpis "da39a3ee5e6b4b0d3255bfef95601890afd80709" - co jest dziwne dla mnie.
Kiedy wpisywalem recznie - nie poprzez formularz, to wpis sie roznil.

Prosze o pomoc, w ktorym miejscu robie blad ?

Ten post edytował plurr 24.08.2007, 15:34:21


--------------------
Wyobraźnia bez wiedzy może stworzyć rzeczy piękne.
Wiedza bez wyobraźni najwyżej doskonałe.

Albert Einstein
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
drPayton
post
Post #2





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

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


Jak na mój gust, to w funkcji którą podałeś nie ma błędu. Wychodziłoby na to, że każdorazowo podajesz takie samo $haslo do funkcji.
Może jest puste/null/undefined etc? Po wpisaniu w google tego hashu jest ponad 45tys wyników wyszukiwania więc...
Pokaż formularz i miejsce wywołania tej funkcji.
Go to the top of the page
+Quote Post
Ojebejbe
post
Post #3





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 20.08.2006

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


A spróbuj zrobić

  1. <?php
  2. $haslo_hash = md5($haslo);
  3. ?>


i potem:

  1. <?php
  2. $reg = $db -> query ("insert into ul_user (id_login, passwd, email, imie, nazwisko)
  3.  values ('$login', '$haslo_hash','$email', '$imie', '$nazwisko')");
  4. ?>


Jak na moje, to w tym co masz, to Ci się pętla robi :]

Ten post edytował Ojebejbe 24.08.2007, 16:46:58


--------------------
Bartek 'Ojebejbe' Mackiewicz
GG#853388 | skype: b.mackiewicz
@: bartosz.mackiewicz@hot.pl

Go to the top of the page
+Quote Post
mike
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


~Ojebejbe może ja się starzeję, ale w tym co podałes a w tym co autor juz ma różnicy nie ma żadnej.
I jaka pętla exclamation.gifquestionmark.gif


~plurr pokaż jak wykonujesz tą funkcję. Inacze nic nie poradzimy.
Go to the top of the page
+Quote Post
plurr
post
Post #5





Grupa: Zarejestrowani
Postów: 175
Pomógł: 12
Dołączył: 28.06.2007
Skąd: Bytom

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


tak wiec, umieszczam formularz:

  1. <?php 
  2. function regForm()
  3. {
  4. ?>
  5. <table border='1'>
  6.  
  7. <form action='register.php' method='post'>
  8. <tr>
  9. <td> Login: </td>
  10. <td> <input type='text' name='login' /> </td>
  11. </tr>
  12. <tr>
  13. <td> Imie: </td>
  14. <td> <input type='text' name='imie' /> </td>
  15. </tr>
  16. <tr>  <td> Nazwisko: </td>
  17.  <td> <input type='text' name='nazwisko' /> </td>
  18. </tr>
  19. <tr> 
  20. <td> E-mail: </td>
  21. <td> <input type='text' name='email' /> </td>
  22. </tr>
  23. <tr> 
  24. <td> Hasłoo: </td>
  25. <td> <input type='password' name='haslo1' /> </td>
  26. <tr> 
  27. <td> Powtórz hasĹ_o: </td>
  28. <td> <input type='password' name='haslo2' /> </td>
  29.  
  30. </tr>
  31. <tr>
  32. <td> <input type='submit' value='WyĹ_lij' /> </td>
  33. </tr>  
  34. </form>
  35. <?php 
  36. }
  37. ?>


i jeszcze skrypt w ktorym wywoluje te ww funkcje procz zdefiniowania zmiennych:

  1. <?php
  2. try {
  3.  
  4.  if (!formEmpty($login, $imie, $nazwisko, $email, $haslo1, $haslo2))
  5.  {
  6.  throw new Exception('Któreś z pól formularza jest puste.');
  7.  }
  8.  
  9.  if (!loginCheck($login))
  10.  {
  11.  throw new Exception('Użytkownik o wybranym loginie juz istnieje!'); 
  12.  }
  13.  
  14.  if (!emailCheck($email))
  15.  {
  16.  throw new Exception('Podany email już istnieje w bazie danych.');
  17.  }
  18.  if (strlen($login)>15)
  19.  {
  20.  throw new Exception('Login nie może być dłuższy niż 15 znaków.');
  21.  }
  22.  
  23.  if ($haslo1 != $haslo2)
  24.  {
  25. throw new Exception('Podane hasła różnią się. Oba podane przez Ciebie hasła muszą być identyczne.');
  26.  }
  27.  
  28.  if (strlen($haslo1)<6)
  29.  {
  30. throw new Exception('Wpisane hasło jest za krótkie - minimum 6 znaków!');
  31.  }
  32.  
  33.  
  34. $reg = regUser($login, $imie, $nazwisko, $email, $haslo);
  35.  if ($reg)
  36.  echo "Rejestracja zakończona.";
  37.  
  38. }
  39. catch (Exception $msg)
  40. {
  41. echo $msg -> getMessage();
  42. regForm();
  43. }
  44. ?>


--------------------
Wyobraźnia bez wiedzy może stworzyć rzeczy piękne.
Wiedza bez wyobraźni najwyżej doskonałe.

Albert Einstein
Go to the top of the page
+Quote Post
Kicok
post
Post #6





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


Cytat
  1. <?php
  2. $reg = regUser($login, $imie, $nazwisko, $email, $haslo);
  3.  if ($reg)
  4.  echo "Rejestracja zakończona.";
  5.  
  6. }
  7. ?>


Przecież nie masz takiej zmiennej jak $haslo, przypatrz się dokładnie ;]


--------------------
"Sumienie mam czyste, bo nieużywane."
Go to the top of the page
+Quote Post
plurr
post
Post #7





Grupa: Zarejestrowani
Postów: 175
Pomógł: 12
Dołączył: 28.06.2007
Skąd: Bytom

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


sciana.gif noo taaak, przeciez dalem tam haslo1 hah, wielkie dzieki ! guitar.gif


--------------------
Wyobraźnia bez wiedzy może stworzyć rzeczy piękne.
Wiedza bez wyobraźni najwyżej doskonałe.

Albert Einstein
Go to the top of the page
+Quote Post

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: 19.08.2025 - 15:48