在新页面上回显消息

时间:2013-02-12 23:50:02

标签: php html

我希望在重定向后在新页面上回显消息。但我只想在重新加载(重定向)后显示一次消息,并在下次重新加载时我希望消息消失。这是可能吗?我举个例子:

$_SESSION['message'] = "entry deleted"
   header("location: anotherpage.html") 

on“anotherpage.php”

echo "$_SESSION['message']" // upon next reload $_SESSION['message'] = "";

3 个答案:

答案 0 :(得分:1)

如果邮件设置且有效,您可以检查

if (isset($_SESSION['message']) && $_SESSION['message']) {
    echo $_SESSION['message'];
    $_SESSION['message'] = false;
}

答案 1 :(得分:1)

它应该按照你的建议工作。 (如果我找对你的话)。

简单地:

重定向页面

$_SESSION['message'] = 'test';
header('Location: anotherpage.php');

on“anotherpage.php”

echo $_SESSION['message'];
$_SESSION['message'] = ''; // message will being empty on further reloads

答案 2 :(得分:1)

echo $_SESSION['message'];
unset($_SESSION['message']);

但我更喜欢添加一个显示消息的功能,例如:

function setMessage($msg_body, $css_style = 'normalMsg') {

    $_SESSION['messages'][$css_style][] = $msg_body;

}


function showMessages() {

    if (empty($_SESSION['messages'])) return;

    foreach ($_SESSION['messages'] as $css_style=>$messages) {
        echo '<div class="'.$css_style.'">';
        echo implode($messages,'<br>');
        echo '</div>';
    }
    unset($_SESSION['messages']);

}