Avatar billede saison Nybegynder
14. april 2004 - 16:45 Der er 3 kommentarer og
1 løsning

session_unset problem

Jeg har 3 sessions:

$_SESSION['ny']['a1'];
$_SESSION['ny']['a2'];
$_SESSION['gammel']['b1'];

Når jeg vil slette alle sessions der er i gruppen ny, skriver jeg følgende:

session_unset($_SESSION['ny']);

Men så sletter den samtlige sessions, dvs. også den der er i gruppen gammel. Hvad gør jeg galt?!
Avatar billede chries Nybegynder
14. april 2004 - 16:49 #1
hvad med:

$_SESSION['ny'] = array();

istedet ?
Avatar billede sukos Juniormester
14. april 2004 - 17:29 #2
Alt efter hvordan du sætter sessions og om register_globals er On eller Off er der forskellige måder man skal slette på.
Et eksempel, (ved ikek hvordan du sættet sessions?)

<?php
session_start();

function make_unset($var) {
if(ini_get('register_globals') == "") {
unset($_SESSION[$var]);
}else{
session_unregister($var);
    }
}


$_SESSION["ny"][] = "a1";
$_SESSION["ny"][] = "a2";

$_SESSION["gammel"][] = "b1";

foreach($_SESSION["ny"] as $var) {
echo $var ." - ";
}

make_unset("ny");

echo"<p>";

if(isset($_SESSION["ny"])) {
echo"Jow, den er stadig sat!";
}else{
echo"Jups, den er ikke sat mere!";
}

echo"</p>";

if(isset($_SESSION["gammel"])) {
echo"Jow, gammel er stadig sat!";
}else{
echo"Nix, gammel er ikke sat mere!";
}
?>
Avatar billede dennismp Nybegynder
14. april 2004 - 17:57 #3
Caution-2 på: http://dk2.php.net/session_unregister

"if you are using $_SESSION (or $HTTP_SESSION_VARS), do not use session_register(), session_is_registered() and session_unregister()."

Lad vær' med at bruge de funktioner. De er kun for at gammelt kode virker.

brug: unset($_SESSION['ny']); istedet
Avatar billede saison Nybegynder
14. april 2004 - 20:00 #4
Jeg sætter sessions ved at skrive $_SESSION['a']['b'] = $var;

dennismps løsning virkede, tak til alle.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester