Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Skyrpt logowania - nie pobieranie rekordu
akcza
post
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 31.12.2010

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


Witam, oto kod:

  1. <form action = "" method ="POST">
  2. Login: <input type ="text" name="login"> <br />
  3. Haso: <input type ="text" name="haslo"> <br />
  4. <input type ="submit" value="Zaloguj"> <br />
  5. </form>
  6.  
  7. <?php
  8. $login=$_POST['login'];
  9. $haslo=$_POST['haslo'];
  10. require "skrypty.php";
  11. connection();
  12. if (!empty($login) and !empty($haslo))
  13. {
  14.  
  15.  
  16. $zapytanie = "SELECT `haslo` FROM `uzytkownicy` WHERE `login` = '$login' ";
  17. $wykonaj = mysql_query($zapytanie);
  18.  
  19. while ($row = mysql_fetch_row($wykonaj))
  20.  
  21. if ($row[0]==$haslo)
  22. {
  23. echo 'ok';
  24. //session_start();
  25. //$_SESSION['login']= $login;
  26. //header ("Location: panel.php");
  27.  
  28. }
  29. else
  30. echo 'Zle dane';
  31. };
  32.  
  33. ?>


Otóż nie pobiera mi z bazy hasła - $row[0] jest puste. Nie wiem w czym mam błąd, bo gdy w phpadmin wpisuje SELECT `haslo` FROM `uzytkownicy` WHERE `login` = 'tutaj_login' to mi normalnie wyśiwetla dane. Pewnie jakiś prosty błąd, jednak wpatruje sie w to od godziny i nic nie moge wymyślęć.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Standardowo - mysql_error i var_dump na tablicy $row.

BTW: Poczytaj o SQL Injection.
Go to the top of the page
+Quote Post
akcza
post
Post #3





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 31.12.2010

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


Mysql_error nic nie wyrzuca.
Var_dumb[$row] daje array(1) { [0]=> string(6) "siemka" }.
Nadal nie wiem gdzie leży błąd.

Co do SQL Injection - wiem, co to (IMG:style_emoticons/default/smile.gif) Potem będę skrypt zabezpieczać.
Go to the top of the page
+Quote Post
sadistic_son
post
Post #4





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

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


Lepiej zrobić to tak:
  1. <?php
  2. $login=$_POST['login'];
  3. $haslo=$_POST['haslo'];
  4. require "skrypty.php";
  5. connection();
  6. if (!empty($login) and !empty($haslo))
  7. {
  8.  
  9.  
  10. $zapytanie = "SELECT * FROM `uzytkownicy` WHERE `login` = '$login' AND `haslo`='$haslo'";
  11. $wykonaj = mysql_query($zapytanie);
  12. $num=mysql_num_rows($wykonaj);
  13. if($num==1){
  14.  
  15. echo 'ok';
  16. //session_start();
  17. //$_SESSION['login']= $login;
  18. //header ("Location: panel.php");
  19.  
  20. }
  21. else{
  22. echo 'Zle dane';
  23. }
  24. }


Ten post edytował sadistic_son 16.03.2011, 21:18:56
Go to the top of the page
+Quote Post
akcza
post
Post #5





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 31.12.2010

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


Dzięki, działa (IMG:style_emoticons/default/smile.gif) Jednak nadal nie wiem czemu tamten kod szwankował.
Go to the top of the page
+Quote Post
sadistic_son
post
Post #6





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

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


Nie wiem czemu tamto nie działało, nie sprawdzałem ale spójrz na te linijki z Twojego kodu:
  1. else
  2. echo 'Zle dane';
  3. };
Coś w nich jest nie tak, co?
Go to the top of the page
+Quote Post

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: 20.12.2025 - 18:22