Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: logowanie
Forum PHP.pl > Forum > Przedszkole
bw
Witam mam pewien skrypt do logowania opart na sesjach którego kod podaje niżej

  1. <? 
  2. $log = 'test'; 
  3. $pass = 'pwd'; 
  4.  
  5.  
  6.  
  7.  function zalogowany_x($x) 
  8. { 
  9. print 'Jestes zalogowany jako: <b>' . $x . '</b>'; 
  10. print '<br>'; 
  11. print '<a HREF=tajny.php?'.session_name().'='.session_id().'>Sprawdz swoje logowanie w pliku tajny.php</A>'; 
  12. print '<br>'; 
  13. print '<a HREF=logout.php?'.session_name().'='.session_id().'>Wyloguj [<b> '. $x .' </b>]</A>'; 
  14.  
  15. } 
  16.  
  17. function formularz($a) 
  18.  { 
  19. $a = &#092;"<form ACTION=\".$_SERVER['PHP_SELF'].\" method='post'>\"; 
  20.  $a .= &#092;"<input TYPE='hidden' name='u' value='1'>\"; 
  21.  $a .= &#092;"login: <input TYPE='text' name='login'><br>\"; 
  22.  $a .= &#092;"haslo: <input TYPE='text' name='pass'><br>\"; 
  23.  $a .= &#092;"<input TYPE='submit' value='loguj'>\"; 
  24.  
  25. return $a; 
  26.  }; 
  27.  
  28. function loguj_uzytkownika($LOG, $PASS, $l, $p) 
  29.  { 
  30. if(($l==$LOG)&&($p==$PASS)) 
  31.  { 
  32.  $_SESSION['login'] = $LOG; 
  33.  $_SESSION['pass'] = $PASS; 
  34.  header('location: tajny.php?'.session_name().'='.session_id()); 
  35.  exit(); 
  36.  } else { 
  37.  
  38. print 'Dane nie sa prawidlowe!'; 
  39. print '<br>'; 
  40. print &#092;"<a HREF='index.php'>Loguj się ponownie</A>\"; 
  41. exit(); 
  42.  
  43.  } 
  44.  }; 
  45.  
  46.  
  47.  
  48.  ((!empty($_SESSION['login']))&&(!empty($_SESSION['pass'])) ? zalogowany_x($_SESSION['login']) : ((@$_POST['u']==&#092;"\") ? print formularz($a=\"true\") : loguj_uzytkownika(@$_POST['login'], @$_POST['pass'], $log, $pass))); 
  49. ?>


MAM wielką prośbę czy ktoś potrafi przerobić ten skrypt aby logowanie było dla kilku użytkowników a nie jednego

Pozdrawiam
scanner
Tak na pierwszy strzał:
  1. <?
  2. error_reporting( E_ALL );
  3.  
  4. // kluczem tablicy jest nazwa usera, wartoscia klucza jest md5() hasla
  5. $aUsers['test'] = 'pass';
  6. $aUsers['test2'] = 'pass2';
  7.  
  8. if( !empty($_SESSION['login'] ) && !empty($_SESSION['pass'] ) )
  9. {
  10. print 'Jestes zalogowany jako: <b>' . $_SESSION['login'] . '</b>';
  11. print '<br>';
  12. print '<a HREF=tajny.php?'.session_name().'='.session_id().'>Sprawdz swoje logowanie w pliku tajny.php</A>';
  13. print '<br>';
  14. print '<a HREF=logout.php?'.session_name().'='.session_id().'>Wyloguj [<b> '. $_SESSION['login'] .' </b>]</A>';
  15. }
  16. else
  17. {
  18. if( isset($_POST['login']) && isset($_POST['pass']) )
  19. {
  20. if( isset( $aUsers[$_POST['login']] ) && ( $aUsers[$_POST['login']] == md5( $_POST['pass'] ) ) )
  21. {
  22. $_SESSION['login'] = $sLogin;
  23. $_SESSION['pass'] = $sPass;
  24. header('location: tajny.php?'.session_name().'='.session_id());
  25. }
  26. else
  27. {
  28. print 'Dane nie sa prawidlowe!';
  29. print '<br>';
  30. print &#092;"<a HREF='index.php'>Loguj się ponownie</A>\";
  31. }  
  32. }
  33. else 
  34. {
  35. print &#092;"<form ACTION=\".$_SERVER['PHP_SELF'].\" method='post'>\";
  36. print &#092;"<input TYPE='hidden' name='u' value='1'>\";
  37. print &#092;"login: <input TYPE='text' name='login'><br>\";
  38. print &#092;"haslo: <input TYPE='text' name='pass'><br>\";
  39. print &#092;"<input TYPE='submit' value='loguj'>\";
  40. }
  41. }
  42. ?>
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.