У меня плохое время, когда SESSION работала на PHP.В массиве SESSION ничего не было, когда он должен был
У меня есть форма следующие действия:
<form action="confirm.php" method="post">
И что есть кнопка, как например:
<button type="submit" id="submit">Proceed</button>
У меня session_start();
на всех моих страницах. После нажатия кнопки формы, у меня есть этот код:
<?php
if(!empty($_POST['submit']))
{
$_SESSION['name'] = $_POST['name'];
$_SESSION['address'] = $_POST['address'];
$_SESSION['strtnum'] = $_POST['strtnum'];
$_SESSION['height'] = $_POST['height'];
}
?>
На confirm.php я получил это:
<?php
print_r($_SESSION);
print_r($_POST);
?>
массив POST имеет правильные значения, но массив SESSION полностью пуст без каких-либо переменных или значения вообще.
Я хотел бы помочь понимание как исправить это.
спасибо.
EDIT: Я уверен, что код фактически не достигает внутренней части оператора if. Я добавил эхо, чтобы напечатать предупреждение (да, я использовал), и оно не работает. Так что я не на 100% уверен, что он входит в if(!empty($_POST['submit']))
* «У меня есть session_start(), на всех моих страницах ** (oh?) **. После кнопки формы у меня есть этот код:' Php if (! Empty ($ _ POST ['submit '])) { $ _SESSION [' name '] = $ _POST [' name ']; '" * - Итак, покажите это в своем коде, где он фактически размещен. 'На confirm.php У меня есть это: Php print_r ($ _ SESSION);' - <= no 'session_start();' там. –
Я не показывал весь код в файле confirm.php. Я просто показал часть, которая печатает массивы. У меня есть session_start(); в верхней части confirm.php – barneesh
попробуйте var_dump() вашу $ _SESSION непосредственно перед закрытием условия if, чтобы убедиться, что все установлено в переменной сеанса. – poush