Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Logowanie - problem
Forum PHP.pl > Forum > Przedszkole
Ideal
Siedze od kilku godzin i ciagle nie moge dojsc do tego co jest nie tak.

System rejestracji dziala, wszystko ladnie sie zapisuje w bazie danych ale logowanie juz nie dziala. Nie wyskakuja zadne bledy ale sie nie chce zalogowac.

Na stronie glownej mam formularz logowania ktory ma action="login.php

wiec po wpisaniu username and password z bazy (takowy username i haslo pasuja) i tak mi wchodzi na login.php i wyskakuje else (czyli loguj jeszcze raz)
.

Co jest zle z tym skryptem ?

  1. <?php
  2. $host="localhost";
  3. $username="xxx";
  4. $password="xxx";
  5. $db_name="xxx";
  6. $tbl_name="users";
  7.  
  8. mysql_connect("$host", "$username", "$password")or die("cannot connect");
  9. mysql_select_db("$db_name")or die("cannot select DB");
  10.  
  11. $login = $_POST['login'];
  12. $pass = $_POST['pass'];
  13.  
  14. $sql="SELECT * FROM $tbl_name WHERE username='$login' and password='$pass'";
  15. $result=mysql_query($sql);
  16.  
  17. $count=mysql_num_rows($result);
  18.  
  19. if($count==1){
  20. header('Location: home.php ');
  21. }
  22. else {
  23. echo "Wrong username or password,please try again !!!<br><br>";
  24. echo '<form action="login.php" method="post">
  25.  
  26.  
  27. <input name="login" style="padding-left:5px; height:32px; width:205px; " type="text" /><br><br>
  28.  
  29. <input name="pass" style="padding-left:5px; height:32px; width:205px; " type="password" /><br><br>
  30.  
  31.  
  32. <input type="submit" name="login" id="button" value="Sign IN" /><br><br>
  33. </form>';
  34. }
  35. ?>
  36.  
Daiquiri
Skoro wyskakuje Ci to co w else, to $count !=1. Czy na pewno nie masz kodowanego hasła? Zamiast $pass np. sha1($pass)? Ewentualnie nie zrobiłeś literówki w zapytaniu?
Ideal
no wlasnie nie mam szyfrowania :/

zmienilem troszke ale tez lipa :/

  1. <?php
  2. $host="localhost";
  3. $username="xxx";
  4. $password="xxx";
  5. $db_name="xxx";
  6. $tbl_name="users";
  7.  
  8.  
  9. mysql_connect("$host", "$username", "$password")or die("cannot connect");
  10. mysql_select_db("$db_name")or die("cannot select DB");
  11.  
  12.  
  13. $login = $_POST['login'];
  14. $pass = $_POST['pass'];
  15.  
  16.  
  17. $sql="SELECT * FROM $tbl_name WHERE username='$login' and password='$pass'";
  18. $result=mysql_query($sql);
  19.  
  20. $count=mysql_num_rows($result);
  21.  
  22. if($count==1){
  23. header('Location: home.php ');
  24. }
  25. else {
  26. echo "Wrong username or password,please try again !!!<br><br>";
  27. echo '<form action="login.php" method="post">
  28.  
  29.  
  30. <input name="login" style="padding-left:5px; height:32px; width:205px; " type="text" /><br><br>
  31.  
  32. <input name="pass" style="padding-left:5px; height:32px; width:205px; " type="password" /><br><br>
  33.  
  34.  
  35. <input type="submit" name="login" style="height:32px; width:210px; " id="button" value="Sign IN" /><br><br>
  36. </form>';
  37. }
  38. ?>
  39.  
Daiquiri
Wyświetl sobie $sql i zobacz czy jest OK.
Ideal
jak to zrobic ? guitar.gif
modern-web
  1. echo $sql;
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.