Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Skrypt logowania
mefjiu
post
Post #1





Grupa: Zarejestrowani
Postów: 313
Pomógł: 5
Dołączył: 22.03.2005

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


Witam wstawiłem skrypt logowania by pion ale mam taki problem jak wpiszesz dane do zalogowania sie niby normalnie sie loguje ale przechodząc na stronie do jakiegos innego dzialu znowu trzeba sie logowac w czym jest problem (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
mike
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Strzelam że nie zachowujesz sesji.

Czy masz wszędzie session_start() :?:
Go to the top of the page
+Quote Post
mefjiu
post
Post #3





Grupa: Zarejestrowani
Postów: 313
Pomógł: 5
Dołączył: 22.03.2005

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


nie nie mam sesjon start
jedyne co mi sie zucilo w oczy to to

setcookie ("login_by_pion", $login);
Go to the top of the page
+Quote Post
Pigula
post
Post #4





Grupa: Zarejestrowani
Postów: 446
Pomógł: 0
Dołączył: 5.03.2005
Skąd: Lublin

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


a moze kod podaj bo chyba nie wszyscy znaja ten skrypt?
pozatym tak jak na pisal mike_mech musisz dodac session_start() do kazdego pliku jezeli w kodzie skryptu wystepuje np. $_SESSION['login']
Go to the top of the page
+Quote Post
mefjiu
post
Post #5





Grupa: Zarejestrowani
Postów: 313
Pomógł: 5
Dołączył: 22.03.2005

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


nio tak ale z ktorego pliku mam kod wstawiac (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
mike
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


W każdym pliku, w którym kożystasz z dobrodziejstw sesji (czyt. używasz zmiennych z tablicy superglobalnej $_SESSION) powinieneś zadbać o podtrzymanie lub utworzenie sesji. Zrobisz to wstawiając session_start().
Go to the top of the page
+Quote Post
mefjiu
post
Post #7





Grupa: Zarejestrowani
Postów: 313
Pomógł: 5
Dołączył: 22.03.2005

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


wstawilem w kazdym pliku to co pisaliście i nic dalej jest to samo (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif)
Go to the top of the page
+Quote Post
mike
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Brak session_start() to pierwsza i jedyna myśl, która może się nasunąć po tak szczegółowym opisie jaki przedstawiłeś. A poza tym, kto wie czy błędów gdzieś nie robisz?
Więcej można powiedzieć widząc kod źródłowy, pokaż istotne jego części to otrzymasz pomoc.
Co Ty myślisz że to forum Jasnowidzów :?:
Go to the top of the page
+Quote Post
mefjiu
post
Post #9





Grupa: Zarejestrowani
Postów: 313
Pomógł: 5
Dołączył: 22.03.2005

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


ok podam kody śrudłowe wszystkich plików tylko zebyścei nie pisali ile to ty kod
ów dałeś (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif)  (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)  


index.php
  1. <HTML>
  2. <HEAD>
  3. <META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=iso-8859-2">
  4. </HEAD>
  5. <BODY>
  6. <p class="zawartosc">
  7. <?
  8.  
  9.     if (!($login_by_pion))
  10.     {
  11.     
  12. if ($p == "Loguj")
  13. {
  14. // usuwanie zbednych znakow
  15.         $login = str_replace ("<", "", $login);
  16.         $login = str_replace (">", "", $login);
  17.         $login = str_replace ("|", "l", $login);
  18.         $login = str_replace (" ", "_", $login);
  19.         $login = stripslashes($login);
  20.         $haslo = str_replace ("<", "", $haslo);
  21.         $haslo = str_replace (">", "", $haslo);
  22.         $haslo = str_replace ("|", "l", $haslo);
  23.         $haslo = str_replace (" ", "_", $haslo);
  24.         $haslo = stripslashes($haslo);
  25.         
  26.     $user_file = "log/users_logins/".$login.".txt";
  27.     if (file_exists($user_file)) // jeżeli jest plik login.txt wczytujemy haslo z pliku
  28.     {
  29.     $plik = fopen ($user_file, "r");
  30.     $zawartosc_pliku = fgets ($plik, 2048); // odczyt hasla z pliku login.txt
  31.     fclose ($plik);
  32.     $podzial = split ("|", $zawartosc_pliku);
  33.     $haslo_z_pliku = $podzial[0];
  34.         if ($haslo == $haslo_z_pliku)
  35.         {
  36.  
  37.         
  38.         
  39.         print ("Zalogowany jako <b>".$login."</b><br><br>");
  40.         print ("<A HREF="strona.php" target="_top">Link</a> | <A HREF="index.php" target="_top">Strona główna</a>");
  41.         print ("<br><br><A HREF="index.php?menu=edit" TARGET="_top">Edycja danych</A>");
  42.         print ("<br><br><A HREF="index.php?menu=logout" TARGET="_top">Wyloguj się teraz</A>");
  43.         }
  44.         else
  45.         {
  46.         print ('Wpisane dane:<br><br>');
  47.         print ("Login: ".$login);
  48.         print ("<br>Hasło: ".$haslo);
  49.         print ('<br><br>s&plusmn; <font color="red">nieprawidłowe</FONT>.');
  50.         print ('<br><A HREF="javascript:history.back();" TARGET="_top">Wróć i popraw</A><br>');
  51.         }
  52.     }
  53.     else // jeżeli nie ma pliku login.txt, czyli nie ma takiego uzytkownika
  54.     {
  55.     print ("Brak użytkownika <p class='srodek'>$login</p>");
  56.     print ('<br><A HREF="javascript:history.back();" TARGET="_top">Wróć i popraw</A><br><br>');
  57.     print ('
  58.     <A HREF="index.php?menu=reminder" TARGET="_top">Zapomniałem hasła</A> <br> 
  59.     <A HREF="index.php?menu=register" TARGET="_top">Zarejestruj się</A>');
  60.     }
  61. }
  62. else
  63. {
  64. /* formularz logowania i link do rejestracji */
  65. print ('<form ACTION="" method="post">');
  66. print ('Login:<br><input TYPE="text" size="14" name="login"><br>');
  67. print ('Hasło:<br><input TYPE="text" size="14" name="haslo"><br>');
  68. print ('<input TYPE="submit" name="p" value="Loguj">');
  69. print ('</form>');
  70. print ('
  71.     <A HREF="index.php?menu=reminder" TARGET="_top">Zapomniałem hasła</A> <br> 
  72.     <A HREF="index.php?menu=register" TARGET="_top">Zarejestruj się</A>');
  73. }    
  74.     }
  75.     else
  76.     {
  77.     print ('Jeste&para; zalogowany jako ');
  78.     print ($login_by_pion);
  79.     print ("<br><br><A HREF="index.php?menu=logout" TARGET="_top">Wyloguj się teraz</A>");
  80.     
  81.     }
  82.     
  83. ?>
  84.  
  85. </P>
  86.  
  87. </BODY>
  88. </HTML>



login.php
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
  4. <link href="rotacja/style.css" rel="stylesheet" type="text/css">
  5. </head>
  6.  
  7.                 <table width="506" border="0" cellpadding="0" cellspacing="0" align="center">
  8.                   <tr> 
  9.                     <td height="17" valign="top" align="center"> 
  10.                       <table width="506" border="0" cellpadding="0" cellspacing="0">
  11.                         <tr> 
  12.                           <td width="82"><img src="gfx/tekst-top1.jpg" width="82" height="35"></td>
  13.                           <td width="353" background="gfx/tekst-top2.jpg" valign="top">
  14.                             <p class="center"><b>Logowanie</b></p>
  15.                           </td>
  16.                           <td width="71"><img src="gfx/tekst-top3.jpg" width="78" height="35"></td>
  17.                         </tr>
  18.                       </table>
  19.                     </td>
  20.                   </tr>
  21.                   <tr> 
  22.                     <td background="gfx/tekst-tlo.jpg" height="178" valign="top" width="506" align="center"> 
  23.                         <table width="479" border="0" cellpadding="0" cellspacing="0">
  24.                           <tr> 
  25.                             <td valign="top" align="center"> 
  26.                           
  27.  
  28.                             <p align="center"></p>
  29.                             <br>
  30.                             <?
  31.                         session_start();    
  32.                             
  33. if ($p == "Loguj")
  34. {
  35. // usuwanie zbednych znakow
  36.         $login = str_replace ("<", "", $login);
  37.         $login = str_replace (">", "", $login);
  38.         $login = str_replace ("|", "l", $login);
  39.         $login = str_replace (" ", "_", $login);
  40.         $login = stripslashes($login);
  41.         $haslo = str_replace ("<", "", $haslo);
  42.         $haslo = str_replace (">", "", $haslo);
  43.         $haslo = str_replace ("|", "l", $haslo);
  44.         $haslo = str_replace (" ", "_", $haslo);
  45.         $haslo = stripslashes($haslo);
  46.         
  47.     $user_file = "log/users_logins/".$login.".txt";
  48.     if (file_exists($user_file)) // jeżeli jest plik login.txt wczytujemy haslo z pliku
  49.     {
  50.     $plik = fopen ($user_file, "r");
  51.     $zawartosc_pliku = fgets ($plik, 2048); // odczyt hasla z pliku login.txt
  52.     fclose ($plik);
  53.     $podzial = split ("|", $zawartosc_pliku);
  54.     $haslo_z_pliku = $podzial[0];
  55.         if ($haslo == $haslo_z_pliku)
  56.         {
  57.         setcookie ("login_by_pion", $login);
  58.         
  59.         print ('Wpisane dane s&plusmn; prawidłowe.<br>');
  60.         print ("Zostałe&para; zalogowany jako <b>".$login."</b>");
  61.         print ("<A HREF="strona.php" target="_top">Link</a> | <A HREF="index.php" target="_top">Strona główna</a>");
  62.         }
  63.         else
  64.         {
  65.         print ('Wpisane dane:<br><br>');
  66.         print ("Login: ".$login);
  67.         print ("<br>Hasło: ".$haslo);
  68.         print ('<br><br>s&plusmn; <font color="red">nieprawidłowe</FONT>.');
  69.         print ('<br><A HREF="javascript:history.back();" TARGET="_top">Wróć i popraw</A><br>');
  70.         }
  71.     }
  72.     else // jeżeli nie ma pliku login.txt, czyli nie ma takiego uzytkownika
  73.     {
  74.     print ("Brak użytkownika ".$login);
  75.     print ('<br><A HREF="javascript:history.back();" TARGET="_top">Wróć i popraw</A>');
  76.     }
  77. }
  78. else
  79. {
  80. /* formularz logowania i link do rejestracji */
  81. print ('<form ACTION="" method="post">');
  82. print ('Login:<br><input TYPE="text" size="14" name="login">');
  83. print ('Hasło:<br><input TYPE="text" size="14" name="haslo">');
  84. print ('<input TYPE="submit" name="p" value="Loguj">');
  85. print ('</form>');
  86. }    
  87. ?>
  88.                             
  89.                             <p align="center">
  90.                            
  91.  
  92.                             </p>
  93.                            
  94.  
  95.                             </td>
  96.                           </tr>
  97.                         </table>
  98.                     </td>
  99.                   </tr>
  100.                   <tr> 
  101.                     <td background="gfx/tekst-bott.jpg" height="27" width="498" align="center">&nbsp;</td>
  102.                   </tr>
  103.                 </table>
  104.                 <br>
  105. </html>


menu.php
  1. <?
  2. print ('<br>Ostatnia rejestracja: ');
  3. include ("log/newest_user.txt");
  4. print ('<br>Liczba użytkowników: ');
  5. // zliczenie liczby wszystich uzytkownikow
  6.     $katalog = opendir ('log/users_logins');
  7.     $i=1;
  8.     while ($plik = readdir ($katalog)) {
  9.       if (ereg (".txt$", $plik)) { $pliki[$i++] = $plik; }
  10.     }
  11.     closedir ($katalog);
  12.     $ile_userow = count($pliki);
  13.     print ($ile_userow);
  14.  
  15. print ('<br><br>');
  16. print ('<A HREF="login.php" TARGET="_top">Logowanie</A> <br> <A HREF="edit.php" TARGET="_top">Edycja danych</A> <br> <A HREF="reminder.php" TARGET="_top">Zapomniałem hasła</A> <br> <A HREF="register.php" TARGET="_top">Zarejestruj się</A>');
  17. ?>


register.php
  1. <?php
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
  5. </head>
  6.  
  7.                 <table width="506" border="0" cellpadding="0" cellspacing="0" align="center">
  8.                   <tr> 
  9.                     <td height="17" valign="top" align="center"> 
  10.                       <table width="506" border="0" cellpadding="0" cellspacing="0">
  11.                         <tr> 
  12.                           <td width="82"><img src="gfx/tekst-top1.jpg" width="82" height="35"></td>
  13.                           <td width="353" background="gfx/tekst-top2.jpg" valign="top">
  14.                             <class="center%
  15.  
  16. ?>


Ten post edytował mefjiu 20.10.2005, 07:11:01
Go to the top of the page
+Quote Post
darecki
post
Post #10





Grupa: Zarejestrowani
Postów: 54
Pomógł: 2
Dołączył: 24.08.2005
Skąd: Warszawa

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


wstaw session_start(); na samym poczatku pliku (przed wyslaniem kodu html do przegladarki) oraz używaj go w głownych plikach - jeżeli plik jest przylączy do skryptu za pomoca np. include to nie musisz juz wstawiac tam session_start() - to mi sie zucilo na samym pocztku :]
Go to the top of the page
+Quote Post
cyper
post
Post #11





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 30.10.2005

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


mi session_start(); w zupełności pomogło, choć robię system logowania oparty na przykładzie z książki a o session_start(); nie było w niej nic mowy (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 21:10