我有这段代码:
<?php
session_start();
echo "".$_SESSION['eventnum']."";
$urlRefresh = "testremot.php";
header("Refresh: 5; URL=\"" . $urlRefresh . "\"");
?>
但标题不起作用,当我尝试运行此代码时会出现此警告:
警告:无法修改标头信息 - 已在第5行的C:\ xampp \ htdocs \ remot \ testremot.php中发送的标头(在C:\ xampp \ htdocs \ remot \ testremot.php:3处开始输出)* *
你能帮帮我吗?
答案 0 :(得分:2)
在发出标题之前,您无法回显任何内容。如果你必须,那么唯一的解决方案是进行输出缓冲。
答案 1 :(得分:2)
好的,让我们看一下line 3
中的内容:
echo "".$_SESSION['eventnum']."";
显然,您正在此行中生成输出(echo
),此行在您致电header
之前出现。
将其移至header
:
session_start();
$urlRefresh = "testremot.php";
header("Refresh: 5; URL=\"" . $urlRefresh . "\"");
echo "".$_SESSION['eventnum']."";
但请注意(来自Wikipedia):
W3C的Web Content Accessibility Guidelines (7.4)不鼓励创建自动刷新页面,因为大多数Web浏览器不允许用户禁用或控制刷新率。
答案 2 :(得分:1)
<?php
session_start();
$urlRefresh = "testremot.php";
header("Refresh: 5; URL=\"" . $urlRefresh . "\"");
echo "".$_SESSION['eventnum']."";
?>
在显示任何内容之前必须设置标题,这里有很多问题......
答案 3 :(得分:1)
请勿使用Refresh
标头。并且不要显示任何东西5秒钟。这是可用性故障。
创建一个页面vieweventnum.php并使用Location标头将用户带到那里
答案 4 :(得分:0)
basma,删除<?php
之前的任何空格或php标记之前的任何字符串。如果在打开<?php