我正在使用codeigniter flashdata在重定向後設置消息。那麼如果我使用它沒有AJAX,一切工作正常。如果我使用flashdata迴應接收到的消息,它仍然會像應該那樣工作,但如果我使用F5刷新一次,我仍然會看到該消息。 Flashdata在第二次刷新後被清除......我該如何解決這個問題?Codeigniter會話flashdata和ajax
這是,什麼我的函數看起來像:
public static function message()
{
if (! empty(self::$message['message']))
{
// build message
$message = '<div class="alert alert-' . self::$message['type'] . '"><button type="button" class="close" data-dismiss="alert">×</button><strong>' . self::$message['heading'] . '</strong>' . self::$message['message'] . '</div>';
// clear static message array
self::$message = array();
// return static message
return $message;
}
else
{
if (class_exists('CI_Session'))
{
// get flash message
$message = self::$CI->session->flashdata('message');
// clear flash data
self::$CI->session->set_flashdata('message', null);
// process flash message
if (! empty($message))
{
// slice flashdata into single parts
$message = explode('::', $message);
// return flash message
return '<div class="alert alert-' . $message[0] . '"><button type="button" class="close" data-dismiss="alert">×</button><strong>' . $message[1] . '</strong>' . $message[2] . '</div>';
}
}
}
return '';
}
F5 + ctrl清除緩存。凡F5只刷新,不會丟失會話數據 –