Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: logowanie
Forum PHP.pl > Forum > Przedszkole
hugme
Mam takie logowanie.
Działa pod Krasnalem na lokalnym serwerze, natomiast nie działa na serwerze w necie.

Czy ktoś mi coś poradzi?


  1. <?php
  2.  
  3. if(!isset($PHP_AUTH_USER)) {
  4. header(&#092;"WWW-Authenticate: Basic realm=\"My Realm\"\");
  5. header(&#092;"HTTP/1.0 401 Unauthorized\");
  6. echo &#092;"Anulowanon\";
  7. }
  8. else {}
  9.  
  10. include (&#092;"setup.php\"); // w setupie jest definicja usera i paddworda
  11.  
  12. if (($PHP_AUTH_USER == &#092;"$user\") && ($PHP_AUTH_PW == \"$passwd\") && ($user))
  13. {
  14.  
  15. echo &#092;"Dla zalogowanych\";
  16.  
  17. }
  18.  
  19. else
  20. {
  21. echo &#092;"Brak dostępu.\";
  22. }
  23.  
  24. ?>


Pozdrawiam

---
Do umieszczania kodu php mamy znacznik [php] ...
hwao
hugme
Nadmienię, że po wywołaniu strony z kodem wyświetla się komunikat:

Warning: Cannot modify header information - headers already sent by

Czy ktoś wie o co tu chodzi?

Czekam na odp.
hugme
ok. teraz pokazuje się okienko logowania, ale nie przyjmuje hasla i loginu, po trzeciej próbie oznajmia: Anulowano
shizo
Spróbuj tego. Ale najpierw utwórz plik user.dat o treści JAKIŚ_login:jakieś_hasło koniecznie oddzielone znakiem ":" (dwukropka)

  1. <?php 
  2.  
  3. file_exists('user.dat') or die('Brak pliku danych uzytkownikow'); 
  4. $userData = file('user.dat'); 
  5.  
  6. $auth = false; 
  7. if (isset($_SERVER['PHP_AUTH_USER'])) 
  8. for ($nr = 0, $cnt = sizeOf($userData); $nr < $cnt; $nr++) { 
  9. $ud = explode(':', $userData[$nr]); 
  10. if ($ud[0] == $_SERVER['PHP_AUTH_USER'] && rtrim($ud[1]) == $_SERVER['PHP_AUTH_PW']) { 
  11. $auth = true; 
  12. break; 
  13. } 
  14. } 
  15.  
  16. if (!$auth) { 
  17. header('WWW-Authenticate: Basic realm=\"News\"'); 
  18. header('HTTP/1.0 401 Unauthorized'); 
  19. echo 'Brak uprawnień do przeglądania strony'; 
  20. die; 
  21. } 
  22.  
  23. echo 'Tutaj wstaw to, co będzie po zalogowaniu'; 
  24.  
  25. ?>
hwao
Warning: Cannot modify header information - headers already sent by
->

Wyslales cos i probojesz dac naglowek
w 1 linijce kodu daj
ob_start" title="Zobacz w manualu PHP" target="_manual()
hugme
kod shizo jest ok, ale zadziałał tylko za pierwszym razem, natomiast na Krasnale działa bez zarzutu

czy to wina serwera, skoro kod jest dobry?

nie wiem jak do tego podejść

wykorzystując kod shizo za pierwszym podejściem po podaniu hasla pojawila sie strona, ale potem wywołuje po trzy razy logowanie i odrzuca

ktoś ma pojęcie o co tutaj chodzi

pozdrawiam
shizo
Właśnie to tak działa laugh.gif Masz trzy próby aby wpisac hasło. jak zgadniesz za pierwsyzm wchodzisz odrazu itp itd. smile.gif
hugme
BARDZO ZABAWNE ;)

Oczywiscie, że poprawnie wpisuję za każdym razem, ale tylko raz zadziałało.
Teraz już nie działa wcale

Czy to wina serwera, help help bo potrzebuje?
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.