-1

我正在尝试在 php 中编写一个页面,该页面在进行一些处理时显示加载消息,然后自动重定向到另一个页面

<?php
    //show a loading message - this is the bit I need help with
    // do some processing - don't need help with this bit
    header("Location: http://www.mysite.com/mynextpage.php");
    exit;
?>

我不能使用 echo 或 javascript,否则我会在页面执行时收到“无法修改标头信息 - 标头已发送”错误。

有什么线索吗?

4

3 回答 3

1

首先,你不能在输出一些数据后使用任何标题更改,这就是你得到上面错误的原因。另一种方法是通过在下一页刷新页面来使用标题重定向:

<?php
    header('Refresh: 5; url=http://www.mysite.com/mynextpage.php' ); 
    echo 'Wait 5 sec then redirected';

笔记:

请记住,必须在发送任何实际输出之前调用header() ,无论是通过普通 HTML 标记、文件中的空白行还是从 PHP 发送。使用 include 或 require 函数或其他文件访问函数读取代码并在调用header()之前输出空格或空行是一个非常常见的错误。使用单个 PHP/HTML 文件时也存在同样的问题。

于 2013-07-02T10:37:57.463 回答
0

最好的方法是使用 ajax 请求。通过javascript,您应该在目标页面上成功重定向时显示加载元素、执行请求

于 2013-07-02T10:23:18.990 回答
0

处理完成后使用java脚本重定向似乎是要走的路。

我在用着

<script type="text/javascript">
    window.location="http://www.mysite.com/mynextpage.php";
</script>

在页面的末尾,它正在工作

于 2013-07-02T12:42:35.577 回答