Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] logowanie, dlaczego nie zapisuje cookie?
Majcok12
post
Post #1





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 20.02.2004

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


Znow mam problem z skryptem logowania. Chodzi o to ze zaleznie czy user jest adminem czy nie w cookie ma dopisane np. admin|TAK/NIE. Tylko ze nie zapisuje mi cookie z pierwszego warunku, tzn. jesli np. pierwszym warunkiem w skrypcie jest to ze jesli uzytkownik nie jest adminem zmienna admin w cookie bedzie miala wartosc NIE lub odwrotnie, tylko ze cookie w pierwszym warunku mi nie zapiuje, a jesli jest spelniony warunek ktory jest drugi w skrypcie (np. user jest adminem) cookie zostaje zapisane.

logowanie.php
  1. <?
  2.  
  3. if(!isset($_POST[&#092;"user_nick\"]) && !isset($_POST[\"user_password\"]) && !$_SESSION[\"usernick\"] && !$_SESSION[\"userpassword\"] && !$_COOKIE[\"user_id\"] && !$_COOKIE[\"user_pass\"])
  4. {
  5.    html_header();
  6. // formularz logowania
  7.    html_footer();
  8.  
  9. }
  10. else
  11. {
  12.    setcookie (&#092;"user_id\", $_POST[\"user_nick\"], time()+86400);
  13.    setcookie (&#092;"user_pass\", $_POST[\"user_password\"], time()+86400);
  14.    header (&#092;"Location: logowanie2.php\" . \"\");
  15. }
  16.  
  17.  
  18. ob_end_flush();    
  19. ?>



logowanie2.php
  1. <?
  2. session_start();    
  3.  
  4. $_SESSION[&#092;"usernick\"] = strtolower(trim($_COOKIE[\"user_id\"])); //zapis do sesji wartosci cookie
  5. $_SESSION[&#092;"userpassword\"] = trim($_COOKIE[\"user_pass\"]);
  6.  
  7. setcookie (&#092;"user_id\");  // usuniecie cookie, wartosci cookie sa teraz w zmiennych sesyjnych
  8. setcookie (&#092;"user_pass\");
  9.  
  10. $zapytanie = mysql_query(&#092;"SELECT user_nick, user_pass, admin FROM users WHERE user_nick ='\".$_SESSION['usernick'].\"'\");
  11. $user = mysql_fetch_array($zapytanie);
  12.  
  13.  
  14. if($_SESSION[&#092;"usernick\"] == strtolower($user[\"user_nick\"]) && $_SESSION[\"userpassword\"] == $user[\"user_pass\"] && $user[\"admin\"] == \"NIE\")
  15. {  //pierwszy warunek (cookie ponizej nie zostana zapisne, nie wiem dlaczego)
  16.  
  17.  
  18.     setcookie (&#092;"user_id\", $_SESSION[\"usernick\"], time()+86400);
  19.     setcookie (&#092;"user_pass\", $_SESSION[\"userpassword\"], time()+86400);
  20.     setcookie (&#092;"admin\", $user[\"admin\"], time()+86400);
  21.  
  22.     html_header(); // funkcja wyswietlajaca szablon strony
  23.  
  24.     echo &#092;"<b>Zostales zalogowany</b>\";
  25.    
  26.     html_footer();
  27.  
  28. }
  29.  
  30.  
  31. if ($_SESSION[&#092;"usernick\"] == strtolower($user[\"user_nick\"]) && $_SESSION[\"userpassword\"] == $user[\"user_pass\"] && $user[\"admin\"] == \"TAK\")
  32. { //drugi warunek
  33.  
  34.  
  35.     setcookie (&#092;"user_id\", $_SESSION[\"usernick\"], time()+86400);
  36.     setcookie (&#092;"user_pass\", $_SESSION[\"userpassword\"], time()+86400);
  37.     setcookie (&#092;"admin\", $user[\"admin\"], time()+86400);
  38.  
  39.     html_header(); // funkcja wyswietlajaca szablon strony
  40.  
  41.     echo &#092;"<b>Zostales zalogowany jako admin</b>\";
  42.    
  43.     html_footer();
  44.     header (&#092;"Location: index.php\");
  45.  
  46. }
  47.  
  48. else 
  49. {
  50.  
  51.     session_unregister(&#092;"usernick\");
  52.     session_unregister(&#092;"userpassword\");
  53.     setcookie (&#092;"user_id\");
  54.     setcookie (&#092;"user_pass\");
  55.     setcookie (&#092;"admin\");
  56.     echo &#092;"zly login lub haslo\";
  57.     echo &#092;"<a href=\"logowanie.php\">Logowanie</a><br>\";
  58.  
  59. }
  60.  
  61. ob_end_flush();    
  62. ?>


PZdr & Thx

Ten post edytował Majcok12 20.11.2004, 19:22:25
Go to the top of the page
+Quote Post

Posty w temacie


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 - 19:58