Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][SQL] Problem z zamknięciem sesji w IE.
Forum PHP.pl > Forum > Przedszkole
mariuszg
witam,

mam problem z wylogowaniem w ie, na mozilli działa (problem jest tylko na serwerze usługodawcy, w domu na WebServ działa)

Po wylogowaniu i tak zmienne sesyjne są pamiętane.


Oto część kodu:

zalogowanie:

  1. <?php
  2. if (isset($_POST['login']) and isset($_POST['haslo'])) {
  3. $haslo = md5($_POST['haslo']);
  4. include("setup.php");
  5. if ($baza = mysql_connect($mysql_host, $mysql_login, $mysql_haslo)) {
  6. if (mysql_select_db($mysql_baza)) {
  7. $wynik=mysql_query("SELECT * FROM $mysql_tabela WHERE login='".$_POST['login']."' and haslo='$haslo' and status=5");
  8. if (mysql_num_rows($wynik)==1) {
  9. $dane=mysql_fetch_array($wynik);
  10. $_SESSION["panel_zalogowany"]="okk";
  11. $_SESSION["panel_login"]=$dane["login"];
  12. $_SESSION["panel_email"]=$dane["email"];
  13. $_SESSION["panel_klient"]=$dane["id"];
  14. $_SESSION["typ_konta"]=$dane["typ_konta"];
  15. }else{
  16. $blad = 1;
  17. }  
  18. } else echo "Nie można połączyć się z bazą";
  19. mysql_close($baza);
  20. }
  21. }
  22. ?>


wylogowanie:
  1. <?php
  2. print "<a href=\"wylogowanie.php?loginn=koniecc\">wyloguj  ".$_SESSION["panel_login"]."</a>";
  3. ?>


  1. <?php
  2. if ($_GET["loginn"]=="koniecc") { 
  3. unset($_SESSION['panel_email']);
  4. unset($_SESSION['panel_zalogowany']);
  5. unset($_SESSION['panel_login']);
  6. unset($_SESSION['panel_klient']);
  7. unset($_SESSION['typ_konta']);
  8. unset($_COOKIE[session_name()]);
  9. }
  10. ?>


proszę o pomoc
Zyryx
a jak dasz zamiast unset($_COOKIE[session_name()]); to:
Kod
setcookie(session_name(), '', time()-42000, '/');


Może pomoże winksmiley.jpg
mariuszg
niestety nie pomogło
Zyryx
na początku pliku w którym następuje wylogowanie musisz jeszcze rozpocząć sesję poprzez session_start(); bo inaczej wogle nie masz dostępu do sesji i nie ma co usuwać. Chyba, że to tylko wycinek kodu i rozpocząłeś sesje, to wtedy nie wiem co tu może być nie tak :/
mariuszg
hejtak - to był wycinek kodumam tu gotowy kod, i jak się zaloguje i klikam wyloguj, następnie nic nie wpisuje i klikam zaloguj to jestem zalogowanyproszę przetestujcie to login a hasło aa wszystko w index.php
  1. <?phpsession_cache_limiter(&#092;"private\"); session_start(); ?><!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\"><html><head><meta http-equiv=\"Content-type\" content=\"text/html; charset=iso-8859-2\" /><link rel=\"Stylesheet\" href=\"style.css\" type=\"text/css\"></head><body background=\"tlo.jpg\"><?phpif ($_GET[&#092;"loginn\"]==\"koniecc\") { // wylogowanie unset($_SESSION['panel_zalogowany']); unset($_COOKIE[session_name()]); session_destroy(); echo\"wylogowanie\";} ?><?if (isset($_POST['login']) and isset($_POST['haslo'])) { if ($_POST['login']==&#092;"a\" and $_POST['haslo']==\"aa\") { $_SESSION[\"panel_zalogowany\"]=\"okk\"; }}echo($_SESSION['panel_zalogowany']);echo\"<br />\";if ($_SESSION[\"panel_zalogowany\"]==\"okk\") {echo \"Zalogowany\";  echo\"<br/>\"; echo\"<a href=\"index.php?loginn=koniecc\">Wyloguj</a>\"; } else {?> <form action=\"index.php\" method=\"post\"> <table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" align=\"center\"> <tr> <td> Login: </td> <td><input type=\"text\" name=\"login\"/></td> </tr> <tr> <td align=\"right\"> Hasło: </td> <td><input type=\"password\" name=\"haslo\" /></td> </tr> <tr> <td align=\"right\" colspan=\"2\"><input type=\"submit\" value=\"zaloguj\" /></td> </tr> </table> </form><?}?></body></html>
witamCzasami jest tak że klikam wyloguj odświeżam stronę i dopiero zadziała wylogowanie pozdrawiam
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.