Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Logowanie na sesjeach, Problem z wczytywanie loginów
Apo
post 2.10.2005, 18:33:01
Post #1





Grupa: Zarejestrowani
Postów: 426
Pomógł: 1
Dołączył: 2.10.2005

Ostrzeżenie: (0%)
-----


Witam napisałem sobie logowanie na sesjach ale nie umie sobie poradzić z błędem. Wszystko chodziło do czasu gdzy urzytkownik i hasło było normalnie zapisane w pliku:
$login = "admin";
$pass = "pass";
ale teraz zapisałem dane w pliku i mam to tak:
admin<>pass
admin1<>pass1
i jeszcze dodałem kilka zaebzpieczeń np sprawdzanie ip z ty z sesji i niechce wogle mi sie urzytkownik poprawnie zalogować Oto kod:

index.php

  1. <?php 
  2. require "config.php"; 
  3. require "functions.php"; 
  4.  
  5. //treść strony 
  6.  
  7. if($_GET['panel'] == "administracyjny") 
  8. { 
  9. if(!isset($_SESSION['auth'])) 
  10. { 
  11. $_SESSION['auth'] = 0; 
  12. } 
  13. OdczytUserów(); 
  14.  
  15. if($_SESSION['auth'] == 1 && $_SESSION['ip'] == $ip && $_SESSION['login'] == $log && $_SESSION['pass'] == $pass) 
  16. { 
  17.  
  18. echo "Zalogowany jako ".$_SESSION['login']; 
  19.  
  20. } 
  21.  
  22. else { 
  23. if(!empty($login) && !empty($haslo)) 
  24. { 
  25. if($login == $log && $haslo == $pass) 
  26. { 
  27. $_SESSION['auth'] = 1; 
  28. $_SESSION['login'] = $login; 
  29. $_SESSION['pass'] = $haslo; 
  30. } 
  31. } 
  32. else { 
  33. ?> 
  34. <form action="" method="post"> 
  35. <input type="text" name="login" /><br /> 
  36. <input type="text" name="haslo" /><br /> 
  37. <input type="submit" value="loguj" /> 
  38. </form> 
  39. <?php 
  40. } 
  41. } 
  42. } 
  43. ?>


plik functions.php

  1. <?php 
  2.  
  3. $ip = $_SERVER['REMOTE_ADDR']; 
  4. $login = trim($_POST['login']); 
  5. $haslo = trim($_POST['haslo']); 
  6.  
  7. function OdczytUserów() 
  8. { 
  9. global $file, $log, $pass; 
  10.  
  11. if(file_exists($file)) { 
  12. $tmp = file($file); 
  13. for($i=0; $i < count($tmp); $i++) 
  14. { 
  15. list($log, $pass) = explode("<>", $tmp[$i]); 
  16. } 
  17. } 
  18. else { 
  19. echo "Brak pliku z danymi urzytkowników!"; 
  20. } 
  21. } 
  22. ?>


plik config.php
  1. <?php 
  2. $file = "baza.php"; 
  3. ?>



i baza.php

  1. <?php
  2.  
  3. admin<>pass 
  4.  
  5. ?>



Prosze pomóżcie przez te sesje mi sie żyć odechciewa sad.gif
Go to the top of the page
+Quote Post
Ociu
post 2.10.2005, 18:45:26
Post #2





Grupa: Moderatorzy
Postów: 1 566
Pomógł: 37
Dołączył: 14.05.2003
Skąd: Kraków




  1. <?php
  2. function SprawdźDane()
  3. {
  4. global $file, $log, $pass;
  5.  
  6. if(file_exists($file)) {
  7. $tmp = file($file);
  8. for($i=0; $i < count($tmp); $i++)
  9. {
  10. list($log, $pass) = explode("<>", $tmp[$i]);
  11. if($log[$i] == $log && $pass[$i] == $pass ) {
  12.  $_SESSION['log'] = $log;
  13.  # etc.
  14.  break;
  15. }
  16. }
  17. }
  18. else {
  19. echo "Brak pliku z danymi urzytkowników!";
  20. }
  21. } 
  22. ?>
Go to the top of the page
+Quote Post
s_w_ir
post 2.10.2005, 19:08:55
Post #3





Grupa: Zarejestrowani
Postów: 315
Pomógł: 1
Dołączył: 6.08.2003
Skąd: Kielce

Ostrzeżenie: (0%)
-----


Przedewszystkim powstawiaj tam gdzie sie tylko da funckje echo wyświetlające wartości zmiennych: przed zmianą i po zmianie. Najważniejsze jest spradzenie czy wartości wejściowe i wyjściowe są takie jakich oczekujemy.

Ten post edytował s_w_ir 2.10.2005, 19:09:53
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 00:17