Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem z password
hmmm
post
Post #1





Grupa: Zarejestrowani
Postów: 247
Pomógł: 0
Dołączył: 4.01.2005

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


utworzylem sobie w bazie tabele, ktora nazwalem 'admin'.
kolumna, w ktorej przechowuje haslo ma nazwe 'wartosc' i jest typu varchar(30).
wprowadzajac do niej haslo skorzystalem z funkcji password().
niby wartosc zostala wprowadzona, bo wyswietlilo mi:
Cytat
Query OK, 1 row affected, 1 warning
jednak skad ten warning?

problem pojawia sie przy probie porownania wartosci w celu zalogowania.
haslo przepuszczam przez funckje password() i porownuje z tym z bazy, jednak mimo iz wpisze to samo, wyswietla mi, ze haslo jest nieprawidlowe.

domyslam sie, ze to przez ten warning podczas wprowadzania danych do tabeli (IMG:http://forum.php.pl/style_emoticons/default/dry.gif)

bede wdzieczny za pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
hmmm
post
Post #2





Grupa: Zarejestrowani
Postów: 247
Pomógł: 0
Dołączył: 4.01.2005

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


zrobilem, jak piszesz, ale dalej nie dziala (IMG:http://forum.php.pl/style_emoticons/default/dry.gif)
nie qmam dlaczego w dalszym ciagu w wierszu polecen, jak poprzez update wpisuje nowe haslo wykorzystujac md5, to wykonuje, ale z bledem.
  1. UPDATE admin SET wartosc=md5('haslo') WHERE id=1;
i wyswietla mi wowczas
Cytat
Query OK, 1 row affected, 1 warning (0.02 sec)
Rows matched: 1  Changed: 1  Warnings: 1
dlaczego?
tworzac tabele kolumne okreslilem jako varchar(30) i nut null.

natomiast tak wyglada skrypt sprawdzajacy dane wysylane z formularza:
  1. <?php
  2. // ustawiam wartosc zmiennej $uwaga
  3. // ma ona za zadanie ostrzegac o bledach
  4. $uwagi = NULL;
  5.  
  6. // przypisuje wartosc przeslanego hasla zmiennej $haslo
  7. $haslo = $_POST['haslo'];
  8.  
  9. // wczytuje plik
  10. // i lacze sie z baza danych
  11. include('inc/polacz.inc');
  12. $db = mysql_connect($host, $user, $pass);
  13. mysql_select_db($name, $db);
  14.  
  15. $polecenie1 = &#092;"SELECT id FROM admin WHERE id=1 AND wartosc=md5('\" . $haslo . \"')\";
  16. $wynik1 = mysql_query($polecenie1);
  17. $wynik2 = mysql_num_rows($wynik1);
  18. // sprawdzam poprawnosc wprowadzonego hasla
  19. // wykonuje dla prawidlowego hasla
  20. if ($wynik2 == 1) {
  21. // zmieniam wartosc pola
  22. $polecenie2 = mysql_query(&#092;"UPDATE admin SET wartosc=1 WHERE id=2\");
  23. header (&#092;"Location: index.php?strona=6\");
  24. exit();
  25. // sprawdzam poprawnosc wprowadzonego hasla
  26. // wykonuje dla nieprawidlowego hasla
  27. } else {
  28. $uwagi .= 'podales nieprawidlowe haslo.' . &#092;"n\";
  29. }
  30.  
  31. ?>
tylko potem zamiast nadpisywania wartosci w tabeli admin bede tworzyl sesje, ale to teraz nie ma znaczenia (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

edit
zapomnialem dodac, ze bez md5 wszystko dziala jak powinno (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif)

Ten post edytował hmmm 29.07.2005, 19:18:45
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: 14.10.2025 - 19:30