Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z autoryzacją
Forum PHP.pl > Forum > Przedszkole
wcg
Mam taki skrypcik. Po prawidłowym wpisaniu loginu i hasla, skrypt nie przechodzi dalej. Jaka może być przyczyna
  1. <?
  2.  if (!isset($PHP_AUTH_USER)) {
  3. header('WWW-Authenticate: Basic realm="Tajne miejsce"');
  4. header('HTTP/1.0 401 Unauthorized');
  5. echo 'Brak dostępu.';
  6.  } else if (isset($PHP_AUTH_USER)) {
  7. if (($PHP_AUTH_USER != "admin") || ($PHP_AUTH_PW != "admin1")) {
  8.  header('WWW-Authenticate: Basic realm="Tajne miejsce"');
  9.  header('HTTP/1.0 401 Unauthorized');
  10.  echo 'Brak dostępu.';
  11.  exit;
  12. } else {
  13.  echo "<P>Zalogowałeś się!</p>";
  14. }
  15.  }
  16. ?>
NetJaro
Poczytaj o funkcji exit" title="Zobacz w manualu php" target="_manual a potem ją wywal ;-)
wcg
Wywalenie jej nic nie pomogło.
NetJaro
A skąd wiesz, że "skrypt nie przechodzi dalej"?

Na końcu skryptu wstaw
  1. <?php
  2. echo 'Skrypt przeszedl dalej ;-)';
  3. ?>

i jeżeli to sie pojawi to.. skrypt przeszedł dalej ;-)
wcg
Wiem to bo zachowuje sie tak jakby był wpisywane zle haslo. Tzn wpisuje login i haslo i dalej pojawia sie okienio do logowania
slaw.omir
Jakiej wersji php używasz?
Ja mam php5 i umnie poniższy skrypt działa wyśmienicie.
Lecz gdy zmiennych 'PHP_AUTH_USER' i 'PHP_AUTH_PW' nie poprzedze $_SERVER to miałem takie same objawy ja ty.
Sprubój tego skryptu:
  1. <?php
  2. $authorized = FALSE; 
  3.  
  4. if ( (isset($_SERVER['PHP_AUTH_USER']) AND isset($_SERVER['PHP_AUTH_PW'])) ) {
  5.  
  6. if ( ($_SERVER['PHP_AUTH_USER'] == 'slawko') AND ($_SERVER['PHP_AUTH_PW'] == 'haslo') ) { $authorized = TRUE;
  7. echo "Witaj ".($_SERVER['PHP_AUTH_USER']) ."jesteś w zasobach chronionych.";
  8. }
  9. }
  10.  
  11. if (!$authorized) {
  12. header('WWW-Authenticate: Basic realm="Zasoby chronione"');
  13. header('HTTP/1.0 401 Unauthorized');  echo "Błąd autoryzacji";
  14. }
  15. ?>
wcg
No niestety probowałem na różne sposoby ale nie działa. Cały czas taki sam objaw, wpisuje dobre haslo i uzytkownika i dalej pojawia sie monit na logowanie. A może to jakis problem z konfiguracją serwera? Czy moze to miec wplyw?
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.