Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Logowanie - problem z bazą
Forum PHP.pl > Forum > Przedszkole
-Kay-
Jestem bardzo początkujący... Chciałem napisać sobie kod który po wcześniejszym wpisaniu i wyslaniu login i pass przeszukuje tabele users w poszukiwaniu takiego usera i pass...
W tabeli users mam coś takiego jak by co:
id username password rang lastlogintime

To moj kod:
  1. <?php
  2. require &#092;"klonfig.php\";
  3.  
  4. $mysql_conn = mysql_connect($hostbazy,$userbazy,$passbazy) or die(&#092;"bazka wysiadla\");
  5.  
  6. mysql_select_db($namebazy) or die(&#092;"selektowanie bbazy wysiadlo\");
  7. $login = $_POST['login'];
  8. $pass = md5($pass);
  9. $login = strip_tags($login);
  10. $login = addslashes($login);
  11. $zapytka = &#092;"SELECT `username` FROM `users` WHERE `username`='$login'\" or die(\"username nawalil\");
  12. $zapytka2 = &#092;"SELECT `password` FROM `users` WHERE `password`='$pass'\" or die(\"tera pass\");
  13. $idzapytki = mysql_query($zapytka) or die(&#092;"przy mysql_query\");
  14.  $idzapytki2 = mysql_query($zapytka2) or die(&#092;"przy mysql_query\");
  15. while ( $wynikname = mysql_fetch_array($idzapytki))
  16. {
  17.  
  18. if( $login == $danezapytki[1] )
  19. $etap1 = 1;
  20. }
  21. while ( $wynikname = mysql_fetch_array($idzapytki2))
  22. {
  23. if (isset($etap1))
  24. {
  25.  
  26. if( $pass == $danezapytki[2] )
  27. {
  28. $etap1 = 2;
  29. echo &#092;"Poprawnie zalogowano (dziala haha.gif)\";
  30. setcookie( &#092;"abccba\", \"1\", time());
  31. }
  32. else echo(&#092;"zly login lub haslo\");
  33. }
  34. else echo(&#092;"zly login lub haslo\");
  35.  
  36. }
  37.  
  38.  
  39.  
  40.  
  41.  
  42. mysql_close($mysql_conn);
  43.  
  44. ?>

Wedlug niego, haslo zawsze jest zle...
Zeby nie bylo - w bazie haslo tez mam w md5...

Sorka za troche nie zrozumialy kod ;d

Z góry thx
Kay
ayeo
$pass = md5($pass); ?

może $_POST['pass'] winksmiley.jpg

Pozdrawiam!
-Kay-
  1. <?php
  2. require "klonfig.php";
  3.  
  4. $mysql_conn = mysql_connect($hostbazy,$userbazy,$passbazy) or die("bazka wysiadla");
  5.  
  6. mysql_select_db($namebazy) or die("selektowanie bbazy wysiadlo");
  7. $login = $_POST['nick'];
  8. $pass = $_POST['pass'];
  9. $pass = md5($pass);
  10. $login = strip_tags($login);
  11. $login = addslashes($login);
  12. $zapytka = "SELECT `username` FROM `users` WHERE `username`='$login'" or die("username nawalil");
  13. $zapytka2 = "SELECT `password` FROM `users` WHERE `password`='$pass'" or die("tera pass");
  14. $idzapytki = mysql_query($zapytka) or die("przy mysql_query");
  15.  $idzapytki2 = mysql_query($zapytka2) or die("przy mysql_query");
  16. while ( $wynikname = mysql_fetch_array($idzapytki))
  17. {
  18.  
  19. if( $login == $danezapytki[1] )
  20. $etap1 = 1;
  21. }
  22. while ( $wynikname = mysql_fetch_array($idzapytki2))
  23. {
  24. if (isset($etap1))
  25. {
  26.  
  27. if( $pass == $danezapytki[2] )
  28. {
  29. $etap1 = 2;
  30. echo "Poprawnie zalogowano (dziala haha.gif)";
  31. setcookie( "abccba", "1", time());
  32. }
  33. else echo("zly login lub haslo");
  34. }
  35. else echo("zly login lub haslo");
  36.  
  37. }
  38.  
  39.  
  40.  
  41.  
  42.  
  43. mysql_close($mysql_conn);
  44.  
  45. ?>

Dalej to samo, przyokazji poprawiłem login na nick ;d teraz jest chyba wszystko dobrze a dalej pisze, ze zly pass or login jak sie loguje a mam stworzonego usera
nowotny
Ale na co to tak kombinować...? robisz z tego jedno zapytanie i od razu kod masz 2 razy krótszy... wyechuj sobie $login i $pass po tych wszystkich operacjach i porównaj... a najlepiej wyechuj sobie zapytanie też... i pokaż no ten formularz...
-Kay-
Już sobie poradziłem smile.gif dla ciekawych rozwiązanie:
  1. <?php
  2. require "klonfig.php";
  3.  
  4. $mysql_conn = mysql_connect($hostbazy,$userbazy,$passbazy) or die("bazka wysiadla");
  5.  
  6. mysql_select_db($namebazy) or die("selektowanie bbazy wysiadlo");
  7. $zalogowany = false;
  8. $login = strtolower($_POST['nick']);
  9. $pass = $_POST['pass'];
  10. $pass = md5($pass);
  11. $login = strip_tags($login);
  12. $login = addslashes($login);
  13. $zapytka = "SELECT * FROM `users` WHERE `username`='".$login."' AND `password`='".$pass."'";
  14. $q7ery = mysql_query($zapytka) or die("przy zapytaniu");
  15.  if(mysql_num_rows($q7ery) == 1) {
  16.  echo("Pomyslnie zalogowany!"); 
  17.  $zalogowany = true; 
  18.  }
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25. mysql_close($mysql_conn);
  26.  
  27. ?>
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.