Ошибка при выполнении временных данных

Form.php (контроллер)

public function dispdata()
{
$result['data']=$this->Form_model->displayrecords();
$this->load->view('display_records',$result);

if (!$this->session->userdata('ci_session'))
{
redirect('Form/login');
}
else
{
$this->session->set_tempdata('item',$result,5);
}
}

display_records (вид)

<?php
if($this->session->tempdata('item')){
redirect('Form/login');
}
?>

Я пытаюсь работать с концепцией tempdata. у меня есть форма регистрации, где я сохранил все зарегистрированные данные в базе данных и те данные о базе данных, которые я отобразил
это на странице просмотра.

как это я отобразил все детали базы данных на странице просмотра, которая просматривает страницу, которую я пытаюсь отобразить только в течение 5 секунд и через 5 секунд она должна перенаправить на страницу входа в систему. Я пытался с приведенным выше кодом, но он не работает, пожалуйста, кто-нибудь может сказать мне, где я иду не так?

0

Решение

tempdata Функция для сессий влияет только на то, как долго данные могут быть сохранены. Удаление данных через 5 секунд в вашем случае не приведет к изменению чего-либо еще на странице.

Насколько я могу сказать, вам не нужно tempdata совсем. Попробуйте это, чтобы увидеть, если вы получаете поведение, которое вы хотите.

public function dispdata()
{
if (!$this->session->userdata('ci_session'))
{
redirect('Form/login');
}

$result['data']=$this->Form_model->displayrecords();
$this->load->view('display_records',$result);
// sleep for 5 seconds
sleep(5);
redirect('Form/login');
}

Почему я удалил else из вашего кода? Так как redirect не возвращает — завершает выполнение скрипта. Итак, когда if оценивает к истине, и перенаправление выполняет этот сценарий.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]