Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> MD5 i hasła w bazie
primo
post
Post #1





Grupa: Zarejestrowani
Postów: 254
Pomógł: 0
Dołączył: 30.12.2003
Skąd: Strzegom

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


Witam,

zachciało mi się przerabiać skrypt, aby hasła w bazie były odczytywane poprzez funkcję MD5. W tym celu poprzez polecenie:

UPDATE `user` SET `userpassword` = MD5(`userpassword`) zmodyfikowałem hasła w bazie. Wziąłem się teraz za przerabianie skryptu i napotkałem problemy.

  1. <?php
  2. function auth_user($userid, $userpassword) {
  3.  global $default_dbname, $user_tablename;
  4.  
  5.  $link_id = db_connect($default_dbname);
  6.  $query = &#092;"SELECT username FROM $user_tablename 
  7.  WHERE userid =&#092;".addslashes($_POST['userid']).\"
  8.  AND userpassword = MD5(&#092;".$_POST['userpassword'].\")\";
  9.  
  10.  $result = mysql_query($query);
  11.  if(!mysql_num_rows($result)) return 0;
  12.  else {
  13. $query_data = mysql_fetch_row($result);
  14. return $query_data[0];
  15.  }
  16. }
  17. ?>


poprawiłem skrypt i zdawać by się mogło, że powinni działać, ale niestety ciągle wyskakuje, iż autoryzacja nieudana. Czy błąd tkwi w tej funkcji, widzi ktoś jakieś niedopatrzenie (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Proszę o pomoc, z góry dziękuję.

pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
chfast
post
Post #2





Grupa: Zarejestrowani
Postów: 222
Pomógł: 0
Dołączył: 3.04.2003
Skąd: Wrocław

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


To jeszcze ja spróbuje coś pomóc.
1. Dodaj sobie w skrypcie:
  1. <?php
  2.  echo 'userid: ', $_POST['userid'];
  3. echo ' userpassword: ', $_POST['userpassword'];
  4. echo ' md5: ', md5( $_POST['userpasswors'];
  5. ?>
i sprawdź czy php nie dodaje slashy do tych zmiennych.
2. Dodaj:
  1. <?php
  2. echo $query;
  3. ?>
żeby sprawdzić jak wygląda w rzeczywistości twoje zapytanie.
3. Sprawdź czy wpisy w bazie są poprawne.
4. Jeżeli userid nie jest typu całkowitego (integer) to wartość przekazywana w zapytaniu powinna być ujęta w cudzysłowy. Wartość userpassword też powinna być w cudzysłowiach.
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: 15.10.2025 - 02:33