Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][MySQL][PHP]System logowania
viamarimar
post
Post #1





Grupa: Zarejestrowani
Postów: 303
Pomógł: 1
Dołączył: 24.09.2011

Ostrzeżenie: (10%)
X----


1. Skrypt z jakiegos powodu gdy dodalem hash przestal dzialac?
2. Co mozna dodac jeszcze aby logowanie bylo bezpieczniejsze
3. Komunikat o zlym hasle nigdy nie wystepuje?
Nawet jak login jest ok a haslo bledne wywala ze odrazu konta nie ma w bazie czyli komunikat =1
  1. echo "Złe hasło, proszę spróbować ponownie";
  2. header("location: index.php?komunikat=2");


Jak rozwiazac kwestie tego zeby wgl zaczelo logowac, rejestracja uzywa tego samego hasha, no i punkt drugi tu juz inwencja i pomysly.

  1. ...
  2. <?php
  3. if(isset($_POST['loguj']) && ($_POST['loguj'])==1) {
  4.  
  5. //filtrowanie
  6. $_POST['login']=mysql_real_escape_string(addslashes(htmlspecialchars(trim($_POST['login']))));
  7. $_POST['haslo']=mysql_real_escape_string(addslashes(htmlspecialchars(trim($_POST['haslo']))));
  8.  
  9.  
  10. $sol = md5("abc"); //sól użytkownika pobierana z bazy
  11. $sol2 = sha1("def"); //sól dodatkowa
  12. $hash = hash('sha512', $_POST['haslo'] . $sol . $sol2);
  13.  
  14.  
  15. $userExists = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM users WHERE login = '".$_POST['login']."' AND pass = '$hash'"));
  16.  
  17. if ($userExists[0] == 0) {
  18. // Użytkownik nie istnieje w bazie
  19. header("location: index.php?komunikat=1");
  20. }
  21. else {
  22. // Użytkownik istnieje
  23. $_SESSION['zalogowany'] = true;
  24. $_SESSION['login'] = $_POST['login'];
  25.  
  26. $user = $_SESSION['login'];
  27. mysql_query("UPDATE `users` SET `logowanie`=NOW(),`online`='1' WHERE login='$user'") or die(mysql_error());
  28.  
  29. header('Location: index.php');
  30.  
  31. echo '<p class="success">Zostałeś zalogowany. Możesz przejść na <a href="index.php">stronę główną</a></p>';
  32. }
  33. }
  34. else{
  35.  
  36. ?>
  37. <form class="form-signin" action="s_logowanie.php" method="POST">
  38. <div class="form-group">
  39. <label>Login</label><input class="form-control" name="login" type="text" required />
  40. </div>
  41. <div class="form-group">
  42. <label>Haslo</label><input class="form-control" name="haslo" type="password" required />
  43. </div>
  44. <div class="row">
  45. <div class="col-xs-6 col-md-6"><input type="reset" value="Wyczyść" class="btn btn-warning btn-block btn-sm" ></div>
  46. <div class="col-xs-6 col-md-6">
  47. <input type="hidden" name="loguj" value="1" />
  48. <input type="submit" value="Zaloguj" class="btn btn-success btn-block btn-sm">
  49. </div>
  50. </div>
  51. </form>
  52.  
  53.  
  54.  
  55.  
  56.  
  57. <?php
  58. }
  59. ...
  60. ?>


Ten post edytował viamarimar 29.11.2014, 15:48:55
Go to the top of the page
+Quote Post

Posty w temacie


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: 22.08.2025 - 17:52