Я пытаюсь передать значение между 2 страницами через $_SESSION
переменных затем очистить его следующим образом:PHP содержания переменного сеанса
Я задаю переменный сеанс со значением на один PHP странице:
$_SESSION["elementName"]="a_373";
И пытается сохранить его в переменной на другую страницу следующим образом:
if (!empty($_SESSION["elementName"])) {
$elemName=$_SESSION["elementName"];
$_SESSION["elementName"]="";
} else {
$elemName="";
}
значение $elemName
всегда пусто, когда я распечатать его. Тем не менее, я получаю правильную распечатку, когда я удаляю строку $_SESSION["elementName"]="";
из вышеуказанного кода.
Edit: я печатаю $elemName
и не $_SESSION["elementName"]
- print($elemName);
Я на общей учетной записи хостинга с PHP 5.3.2 и register_globals
выключен (как на phpinfo();
).
Мне нужно сбросить/очистить переменную сеанса, как только я получу значение, которое оно имеет, но оно не работает, и это затмевало меня в течение последних нескольких дней. Любые идеи почему? Благодаря!
EDIT:
Дополнительные ключи: я тестировал с var_dump дня сессии перед, если заявление и установить другое значение для $ elemName в разделе еще следующим образом:
var_dump($_SESSION["elementName"]);
$elemName="x";
if (isset($_SESSION["elementName"]) && !empty($_SESSION["elementName"])) {
$elemName=$_SESSION["elementName"];
$_SESSION["elementName"]="";
} else {
$elemName="None";
}
print("<br />".$elemName);
Я получил этот результат:
string(5) "a_373"
None
проверьте, есть ли у вас session_start() перед любым другим выходом – nvanesch
, если он работает, когда $ _SESSION ["elementName"] = ""; удаляется, то это не так. –
Извините, пропустил эту строку :( – nvanesch