Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> zamiana sesji na cookie
dabb
post 3.04.2005, 12:47:11
Post #1





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 13.11.2003
Skąd: Poznań

Ostrzeżenie: (30%)
XX---


Witam

Mam taki skrypt:


  1. <?php 
  2. $admin_pass='56'; 
  3. ?><meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-2\"> 
  4. <?php 
  5.  
  6. if($_GET['menu']=='logout')$_SESSION['session_admin_login']=false; 
  7. if($admin_pass==$_POST['form_pass'])$_SESSION['session_admin_login']=true;else { 
  8. ?>
  9. <form name=\"form1\" method=\"post\" action=\"?\"> 
  10. <input type=\"password\" name=\"form_pass\" style='width:100px;'> 
  11. <input type=\"submit\" name=\"Submit\" value=\"OK\" style='width:30px;'> 
  12. </form> 
  13. <?php 
  14. $_SESSION['session_admin_login']=false; 
  15. die(); 
  16. } 
  17. ////////////////////////////////////// 
  18.  
  19. echo &#092;"<A HREF='?menu=logout'>[ wyloguj ]</A>\"; 
  20. // inculde itp. 
  21. ?>

Jak zamienic te sesje zamienic na cookie zeby przy logowaniu skrypt sprawdzal czy istnieje cookie.
Jesli cookie istnieje to wyswietla sie to co sie ma wyswietlic np echo lub include


--------------------
Remember to brush your teeth !
biedziak.com biuro rachunkowe w rozsądnej cenie.
Go to the top of the page
+Quote Post
hwao
post 3.04.2005, 12:50:47
Post #2


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




  1. <?php // metoda klasy
  2. function login(){
  3.  $login = 'root';
  4.  $pass = 'pass';
  5.  if( isSet( $_POST['login'] ) && isSet( $_POST['haslo'] ) ) {
  6. if( $_POST['login'] == $login && $_POST['haslo'] == $pass ) {
  7.  setcookie( 'login', $_POST['login'], time()+60*60*24*);
  8.  setcookie( 'pass', $_POST['haslo'], time()+60*60*24*);
  9. return TRUE;
  10. }
  11.  }
  12.  
  13.  if( isSet( $_COOKIE['login'] ) && isSet( $_COOKIE['pass'] ) ) {
  14. if( $_COOKIE['login'] == $login && $_COOKIE['pass'] == $pass ) {
  15.  return TRUE;
  16. }
  17.  }
  18.  
  19.  return false;
  20. }
  21. ?>

Dorob formularz z polem login i haslo
a sprawdza sie tak
  1. <?php
  2. if( !login() ) die( 'wpisz dane do formularza' );
  3. ?>
Go to the top of the page
+Quote Post
chfast
post 3.04.2005, 13:08:46
Post #3





Grupa: Zarejestrowani
Postów: 222
Pomógł: 0
Dołączył: 3.04.2003
Skąd: Wrocław

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


Ja przerobiłem tak:
  1. <?php
  2. $admin_pass='56';
  3.  
  4. if($_GET['menu']=='logout')
  5. setcookie('admin_login');
  6. if($admin_pass==$_POST['form_pass'])
  7. setcookie('admin_login', true, time()+24*60*60 );
  8. else {
  9. ?>
  10. <form name=\"form1\" method=\"post\" action=\"?\">
  11. <input type=\"password\" name=\"form_pass\" style='width:100px;'>
  12. <input type=\"submit\" name=\"Submit\" value=\"OK\" style='width:30px;'>
  13. </form>
  14. <?php
  15. die();
  16. }
  17. //////////////////////////////////////
  18.  
  19. echo &#092;"<A HREF='?menu=logout'>[ wyloguj ]</A>\";
  20. // inculde itp.
  21. ?>

Mało to bezpieczne i przy logowaniu wcale cookie nie jest sprawdzane, ale powinno działać analogicznie do twojego przykładu. Pamiętaj ze cookie pojawia sie dopiero po przeładowaniu strony.


--------------------
pozdrawiam, chfast
Go to the top of the page
+Quote Post
-Guest-
post 3.04.2005, 13:18:28
Post #4





Goście







Moglby ktos ten drugi skrypt przerobic zeby cookie bylo sprawdzane i haslo bylo przechowywane w osobnym pliku ?
Go to the top of the page
+Quote Post
dabb
post 3.04.2005, 13:32:04
Post #5





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 13.11.2003
Skąd: Poznań

Ostrzeżenie: (30%)
XX---


  1. <?php
  2. $admin_pass='56';
  3.  
  4. if($_GET['menu']=='logout')
  5. setcookie('admin_login');
  6. if($admin_pass==$_POST['form_pass'])
  7. //setcookie('admin_login', true, time()+24*60*60 );
  8. setcookie('admin_login', $admin_pass, time()+24*60*60 );
  9. else {
  10. ?>
  11.  
  12. <form name=\"form1\" method=\"post\" action=\"?\">
  13. <input type=\"password\" name=\"form_pass\" style='width:100px;'>
  14. <input type=\"submit\" name=\"Submit\" value=\"OK\" style='width:30px;'>
  15. </form>
  16.  
  17. <?php
  18. die();
  19. }
  20. //////////////////////////////////////
  21. if ($_COOKIE['admin_login'] == $admin_pass) {
  22. echo &#092;"jestes zalogowany<br>\";
  23. echo &#092;"<A HREF='cookie.php?menu=logout'>[ wyloguj ]</A>\";
  24. // inculde itp.
  25. }
  26. ?>



Wszystko dziala ale jak zamkne przegladarke i wejde ponownie na strone ze skryptem to musze sie znowulogowac sad.gif

Ten post edytował d4b 3.04.2005, 14:09:21


--------------------
Remember to brush your teeth !
biedziak.com biuro rachunkowe w rozsądnej cenie.
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 Wersja Lo-Fi Aktualny czas: 19.07.2025 - 09:51