Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Problem z logowaniem co jest nie tak, Cos nie tak z tym okienkiem
frasek
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.07.2006

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


Mam malutki problemik z moim skryptem php nie wiem dlaczego nie dziala poprawnie tzn zawsze pojawia mi sie okienko do logowania. Chcac sobie urozmaicic zycie napisalem taki oto skrypt, chcialem wykorzystac do logowania okienko a nie zwykly formularz, niestety jakos tak wyszlo ze skrypt nie dziala i za kazdym razem pojawia sie to okienko i nigdy nie znika oto tresc pliku function.php
  1. <?php
  2. function poczatek()
  3. {
  4. $login = $SERVER['PHP_AUTH_USER'];
  5. $haslo = $_SERVER['PHP_AUTH_PW'];
  6.  
  7. if(!isset($login))
  8. {
  9. header('WWW-Authenticate: Basic Realm="Private"');
  10. header('HTTP/1.1 401 Unauthorized');
  11. }
  12. else
  13. {
  14. $status = sprawdzenie($login, $haslo);
  15. if(!$status)
  16. {
  17.  header('WWW-Authenticate: Basic Realm="Private"');
  18.  header('HTTP/1.1 401 Unauthorized');
  19. }
  20. else
  21. {
  22.  zahaszowanie();
  23. }
  24. }
  25. }
  26.  
  27.  
  28.  
  29. function sprawdzenie($login, $haslo)
  30. {
  31. $sPatter = "^[0-9a-z_-]+$";
  32. /*if(!eregi($sPattern,$login) && !eregi($sPattern,$haslo))
  33. {
  34.  return(0);
  35. }*/
  36. $fp = @fopen("./passwd.d", "r")
  37.  or die("Nie można otworzyć pliku");
  38. while (!@feof($fp))
  39. {
  40. $sLine = @fgets($fp, 100);
  41. $aData = explode (":", $sLine);
  42. $aData[0] = trim($aData[0]);
  43. $aData[1] = trim($aData[1]);
  44. if($login == $aData[0] && sha1($haslo) == $aData[1])
  45. {
  46.  @fclose($fp);
  47.  return (1);
  48. }
  49. else
  50. {
  51.  @fclose($fp);
  52.  return(0);
  53. }
  54. }
  55. }
  56. ?>

a oto plik index.php, jakby sie komus pisac nie chcialo podaje wszystko.
  1. <?php
  2. include("function.php");
  3. $result=poczatek();
  4. if ($result==1)
  5. print("Zalogowales sie do systemu");
  6. else print("Cos jest nie tak");
  7. //zahaszowanie();
  8. ?>

Nie wkleilem tutaj tylko funckji haszujacej bo dziala poprawnie. Dodam tylko ze funkcja sprawdzanie rowniez dziala poprawnie, wiec problem musi tkwic w funkcji poczatek(). Jakby ktos mial pomysl dlaczego to tak dziwnie dziala to z gory dziekuje za pomoc.
Go to the top of the page
+Quote Post
Kicok
post
Post #2





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


Zamień:
Kod
$login = $SERVER['PHP_AUTH_USER'];

na:
Kod
$login = $_SERVER['PHP_AUTH_USER'];


--------------------
"Sumienie mam czyste, bo nieużywane."
Go to the top of the page
+Quote Post
frasek
post
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.07.2006

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


Ale ze mnie slepiec, dziala dzieki smile.gif.
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 Aktualny czas: 21.08.2025 - 19:52