我现在有点迷路了。我正在使用PHP会话来存储已登录用户的用户数据以及错误消息或成功消息之类的一些消息,这些消息将在下一页中回显。
整个概念几乎可以在我测试过的所有不同浏览器上正常运行。只有Chrome无法处理。我在Chrome上设置的第一个会话没有保存。从此以后,所有其他会话都将被保存并像我期望的那样可读。
我的网站上有用于所有流程的脚本。例如,sContact.php
负责联系表格。在脚本末尾,我将所有消息保存在会话中。
每个内容页面都有包含messages.php
,其中会回显会话中的所有消息。由于有了此设置,我可以设置一条消息,并且无论我将用户重定向到何处,该消息都会被回显。
sContact.php脚本结尾
$alerts = [];
if (count($alerts) === 0) {
$alerts[] = HTML_SUCCESS_START . 'some message' . HTML_END;
$_SESSION['alerts'] = $alerts;
?> <script> window.location = "some URL"; </script> <?php
exit;
脚本以session_start();
回显消息的模板message.php
if (isset($_SESSION['alerts'])) {
if (!empty($_SESSION['alerts'])) {
if (count($_SESSION['alerts'] > 0)) {
foreach ($_SESSION['alerts'] as $alert) {
echo $alert;
}
}
}
}
unset($_SESSION['alerts']);
内容站点以session_start();
开头,其中{.1}包含message.php。
就像已经说过的那样,这对于除chrome之外的所有浏览器都适用。
我在这个领域有点新手,很迷路。希望你们有一些想法,甚至解决方案;)
感谢您的帮助。