会话消息未显示

时间:2018-04-11 10:48:32

标签: php html mysql

我有一个名为settings_email.php的php文件,其中包含用户更改其电子邮件的表单,当用户按提交时,它会转到名为includes / changeemail.php的第二个php文件以更新表然后发送他/她回到相同的页面,并带有一条消息,表明它在携带用户ID时成功,因为初始页面使用它。但是没有显示任何消息,并且电子邮件更新成功。我误用了什么吗?我还需要包含其他内容吗?有没有更好的方法呢?

settings_email.php

<?php
session_start();
include 'includes/dbh.inc.php';
if (isset($_SESSION['flash'])) {
    echo $_SESSION['flash'];
    unset($_SESSION['flash']);
}
<!DOCTYPE html>
<html lang="en">
<head>
....
</head>
<body>
....
</body>
</html>

包括/ changeemail.php

<?php
session_start();
include 'dbh.inc.php';
if (isset($_POST['changeemail'])) {
    //Error Handlers
    if(){
        ....
    }else{
        $_SESSION['flash'] = 'Success';
        header("Location: ../settings_email.php?settingsemail=".$id );
        exit();
    }
}  

1 个答案:

答案 0 :(得分:2)

这样做:在body标签内回显并且不要忘记通过php“?&gt;”。

<!DOCTYPE html>
<html lang="en">
<head>
....
</head>
<body>
<?php
session_start();
include 'includes/dbh.inc.php';
if (isset($_SESSION['flash'])) {
    echo $_SESSION['flash'];
    unset($_SESSION['flash']);
}
?>
</body>
</html>