#php #session
#php #сессия
Вопрос:
currentpage.php
Случай 1:
session_start();
if (isset($_SESSION['one_session']) amp;amp; (time() - $_SESSION['one_session'] > 1800)) {
session_unset();
session_destroy();
}
$_SESSION['one_session'] = time();
if(isset($_SESSION['another_session']))
{
echo "another_session";
}
Случай2:
session_start();
if(isset($_SESSION['another_session']))
{
echo "another_session";
}
В случае 2, если я обновлю страницу через 24 минуты (тайм-аут по умолчанию), тогда сеанс не должен работать правильно?? и, следовательно, echo ничего не выведет??
Но в случае 1 будет ли сеанс длиться 30 минут?? сработает ли echo, если я обновлю страницу через 24 минуты?? если да, то почему?? в чем разница между обоими случаями в отношении тайм-аута сеанса??
РЕДАКТИРОВАТЬ: предположим, что я установил $_SESSION[‘another_session’] на previouspage.php и затем приземлился на текущей странице.
Предыдущая страница может быть такойpreviouspage.php
session_start();
$_SESSION['another_session']="another_session";
header("location:currentpage.php");
Детали потока:
Я сначала открываю previouspage.php затем я приземлюсь на currentpage.php и затем я жду 24 минуты (тайм-аут по умолчанию) и обновляю currentpage.php.Now currentpage.php есть два случая, которые я объяснил выше.Теперь я хочу знать, истечет ли срок действия $_SESSION[‘another_session’], если я обновлю currentpage.php через 24 минуты?ИЛИ он истечет через 30 минут?Можете ли вы сказать, в чем разница в обоих случаях, если вывод отличается? ЕСЛИ выходные данные одинаковы (означает, что в обоих случаях сеанс истекает через 24 минуты), то как я могу увеличить время ожидания до 30 минут для $ _SESSION[‘another_session’]?
Комментарии:
1. Вы никогда не устанавливали
$_SESSION['another_session']
, поэтому условие, которое выдает вывод, никогда не будет выполнено.2. Привет, спасибо за ответ, но я установил $ _SESSION [‘another_session’] на другой странице.
3. Тогда, должно быть, что-то не так на другой странице или в порядке, в котором вы что-то делаете. Пожалуйста, включите в свой вопрос ту часть кода, где задано «another_session», и добавьте некоторые подробности о потоке вашего приложения
4. Привет, я обновил вопрос, чтобы вы его четко поняли. Можете ли вы взглянуть сейчас?
5. previouspage.php задает
$_SESSION['another_session']="another_session"
строку? Сделайте это из сеанса верхнего набора — проверьте, установлен ли он — проверьте оставшееся время или что-то еще — поиграйте с этим, это лучший способ понять и изучить это. Вы не можете научиться кодированию без кодирования, без реальных тестов.