Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Logowanie
Forum PHP.pl > Forum > Przedszkole
patrol114
Witam,
napisałem skrypt na logowanie lecz jeszcze dodałem do niego zapytanie które będzie sprawdzało czy konto jest aktywne, błąd mam taki że jeżeli w bazie danych jest napisane w kolumnie aktywacja na 0 to i tak mnie loguje bez problemów.

  1. <?php
  2. require('config.php');
  3.  
  4.  
  5. $imie=$_POST['imie'];
  6. $haslo=$_POST['haslo'];
  7.  
  8.  
  9. $imie = stripslashes($imie);
  10. $haslo = stripslashes($haslo);
  11. $imie = mysql_real_escape_string($imie);
  12. $haslo = mysql_real_escape_string($haslo);
  13.  
  14. $result=mysql_query("SELECT * FROM user WHERE imie=".$imie." AND haslo=".$haslo."");
  15.  
  16.  
  17. $count=mysql_num_rows($result);
  18.  
  19.  
  20. if($count==1){
  21.  
  22. header("location:login_success.php");
  23. }
  24. else {
  25. echo "Złe Hasło";
  26. }
  27.  
  28. $query = mysql_query("SELECT * FROM user WHERE aktywacja = 1 and imie=".$imie."") or die("Query failed");
  29. if(mysql_num_rows($query)){
  30.  
  31.  
  32.  
  33. }
  34. ?>
krispak
W ogole tego nie sprawdzasz przed zapytaniem masz przekierowanie na inna strone po poprawnym zalogowaniu.
Zamien ten kawalek
  1. $result=mysql_query("SELECT * FROM user WHERE imie=".$imie." AND haslo=".$haslo."");
  2.  
  3. $count=mysql_num_rows($result);
  4.  
  5. if($count==1){
  6.  
  7. header("location:login_success.php");
  8. }
  9. else {
  10. echo "Złe Hasło";
  11. }
  12.  
  13. $query = mysql_query("SELECT * FROM user WHERE aktywacja = 1 and imie=".$imie."") or die("Query failed");
  14. if(mysql_num_rows($query)){
  15.  
  16. }

na
  1. $result = mysql_query("SELECT * FROM user WHERE imie = '".$imie."' AND haslo = '".$haslo."' AND aktywacja = 1");
  2. $count = mysql_num_rows($result);
  3.  
  4. if($count == 1)
  5. {
  6. header("location:login_success.php");
  7. } else {
  8. echo "Złe dane logowania lub konto jest nieaktywne.";
  9. }

Rozpatrz jeszcze szyfrowanie hasla, np SHA1 + sol bo widac nie robisz tego.
Pozdrawiam
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.