Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Rejestracja i Logowanie do serwisu
--Koko--
post
Post #1





Goście







Witam, posiadam taki skrypt do rejestracji i logowania, który znalazłem w internecie. Dodam, że sprawdza się bardzo dobrze ale mam pare pytań.

1. Rejestrator.html :
  1. <form method="post" action="rejestrator.php">
  2. <input type="text" name="imie"><br> - Imię<br>
  3. <input type="text" name="nazwisko"><br> - Nazwisko<br>
  4. <input type="text" name="email"><br> - Adres E-Mail<br>
  5. <input type="text" name="login"><br> - Login<br>
  6. <input type="password" name="haslo"><br> - Hasło<br>
  7. <input type="password" name="haslo2"><br> - Powtórz haslo<br>
  8. <input type="submit" value="rejestruj!">
  9. </form>


2.Rejestrator.php

  1. <?
  2.  
  3.  
  4. $imie = $_POST['imie'];
  5. $nazwisko = $_POST['nazwisko'];
  6. $email = $_POST['email'];
  7. $login = $_POST['login'];
  8. $haslo = $_POST['haslo'];
  9. $haslo2 = $_POST['haslo2'];
  10. $file = ("users/$login.cl50cp1eoq9zj3scotij1a84");
  11. if(file_exists($file)):
  12. echo("Ten login jest juz zajety!");
  13. elseif($haslo != $haslo2):
  14. echo("Podales dwa rozne hasla!");
  15. else:
  16. $ciag = "$login:$haslo:$imie:$nazwisko:$email";
  17. $zapis = str_replace("$ "," $",$ciag);
  18. $open = fopen("$file", "w+");
  19. fputs($open, $zapis);
  20. fclose($open);
  21. echo header("Location: rejestracjapomyslna.php");
  22. endif;
  23. ?>


3. Login.php

  1. <?php
  2.  
  3. function checkPass($user, $pass)
  4. {
  5. $login = $_POST['login'];
  6. if(!$fd = @fopen("users/$login.cl50cp1eoq9zj3scotij1a84", "r")) return 1;
  7. $result = 2;
  8. while (!feof($fd)){
  9. $line = trim(fgets($fd));
  10. $arr = explode(":", $line);
  11. if(count($arr)<2)
  12. continue;
  13.  
  14. if($arr[0] != $user)
  15. continue;
  16.  
  17. if($arr[1] == $pass){
  18. $result = 0;
  19. break;
  20. }
  21.  
  22. else
  23. break;
  24. }
  25. fclose($fd);
  26. return $result;
  27. }
  28.  
  29. if(isSet($_SESSION['zalogowany'])){
  30. header("Location:chronionastrona.php");
  31. }
  32.  
  33. else if(!isSet($_POST["haslo"]) || !isSet($_POST["login"])){
  34. $_SESSION['komunikat'] = "Wprowadz nazwe uzytkownika i haslo:";
  35. include('form.php');
  36. }
  37.  
  38. else{
  39. $val = checkPass($_POST["login"], $_POST["haslo"]);
  40. if($val == 0){
  41. $_SESSION['zalogowany'] = $_POST['login'];
  42. header("Location:chronionastrona.php");
  43. }
  44.  
  45. else if($val == 1){
  46. $_SESSION['komunikat'] = "Blad serwera. Zalogowanie nie bylo mozliwe!";
  47. include('form.php');
  48. }
  49.  
  50. else if($val == 2){
  51. $_SESSION['komunikat'] = "Nieprawidlowa nazwa uzytkownika lub haslo";
  52. include('form.php');
  53. }
  54.  
  55. else {
  56. $_SESSION['komunikat'] = "Blad serwera. Zalogowanie nie bylo mozliwe";
  57. include('form.php');
  58. }
  59. }
  60.  
  61. ?>


4. chronionastrona.php

  1. <?php
  2. if(!isSet($_SESSION['zalogowany'])){
  3. $_SESSION['komunikat'] = "Nie jestes zalogowany!";
  4. include('form.php');
  5. exit();
  6. }
  7. ?>




1. W związku z tym skryptem do rejestracji i logowania, chciałem zapytać czy jest to w miarę bezpieczny sposób?
2. Co i gdzie należy dopisać do skryptu, aby podczas zamknięcia strony, bądź nie używania jej przez dłuższy okres, użytkownik był automatycznie wylogowywany?

Pozdrawiam serdecznie, dzięki za wszystkie odpowiedzi (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
pawlo20
post
Post #2





Grupa: Zarejestrowani
Postów: 112
Pomógł: 0
Dołączył: 31.08.2012

Ostrzeżenie: (40%)
XX---


A mam takie pytanie jak ci to działa ja testowałem i jak wszystko wypełniam dobrze to przechodzi na (komunikat nie ma takiej strony) dopiero jak źle wpisze chasła ( 1 inne 2 inne ) to wyskakuje podałeś dwa różne hasła. To co tu może być źle . to moje gg 44385613
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: 9.10.2025 - 15:40