Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] problem z validate
Forum PHP.pl > Forum > Przedszkole
Scezet
Witam

Zaczalem sie uczyc PHP wiec zakupilem kurs Strefa Kursow -cms i napotkalem pewien problem .


login.php
  1. <?php
  2.  
  3. include("includes/database.php");
  4. include("includes/init.php");
  5.  
  6.  
  7. if(isset($_POST['submit'])){
  8.  
  9. $Teamplate -> setData('input_user', $_POST['username']);
  10. $Teamplate -> setData('input_pass', $_POST['password']);
  11.  
  12. if($_POST['username'] == '' || $_POST['password'] == ''){
  13. $Template -> setAlert('Uzupelnij wymagane pola','error');
  14. $Template -> load ("views/v_login.php");
  15. } else if ($Auth -> validateLogin($Template -> getData('input_user'), $Template -> getData('input_pass') == FALSE)){
  16. $Template -> setAlert('Nieprawidlowy login lub haslo','error');
  17. $Template -> load ("views/v_login.php");
  18. } else {
  19. $_SESSION['username'] = $Template -> getData('input_user');
  20. $_SESSION['loggedin'] = TRUE;
  21. $Template -> setAlert('Witaj' . $Template -> getData('input_user'));
  22. $Template -> redirect('users.php');
  23. }
  24. }
  25. else {
  26. $Template -> load ("views/v_login.php");
  27. }
  28.  
  29.  
  30.  
  31.  


Auth.php

  1. <?php
  2.  
  3. class Auth {
  4.  
  5. private $salt = '45xkl89s';
  6.  
  7. function __construct(){
  8. }
  9.  
  10. function validateLogin($user, $pass){
  11. global $Database;
  12.  
  13. if($stmt = $Database -> prepare("SELECT * FROM users WHERE username = ? AND password = ?")){
  14. $stmt -> bind_param("ss", $user, md5($pass.$this -> salt ));
  15. $stmt -> execute();
  16. $stmt -> store_result();
  17.  
  18. if($stmt -> num_rows > 0){
  19. $stmt -> close();
  20. return TRUE;
  21. }else{
  22. $stmt -> close();
  23. return FALSE;
  24. }
  25. } else {
  26. die();
  27. }
  28. }
  29.  
  30. function checkLoginStatus(){
  31. if(isset($_SESSION['loggedin'])){
  32. return TRUE;
  33. }else {
  34. return FALSE;
  35. }
  36. }
  37.  
  38. function logout(){
  39. }
  40.  
  41. }
  42.  


Szukalem sam jak rozwiazac ten problem, ale niestety nie udalo mi sie . Pomozecie ?

PS. Przepraszam za brak polskich znakow, ale mieszkam w Niemczech (niemiecka klawiatura/niemieckie wprowadzanie)
viking
W linii 15 login.php przekazujesz do validateLogin jako hasło boolean. Dwa poważne błędy: nie używa się ani global, ani tym bardziej md5 do trzymania haseł.
Scezet
Dzieki jakos dalem rade napisac w pelni funkcjonalny system rejestracji/logowania .
Tak jak radziles do trzymania hasel nie uzylem md5 a sha .
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.