重定向到另一个页面并直接返回主页?

时间:2011-02-11 09:03:40

标签: php mysql

我有一个用MySQL编写的搜索引擎

当用户搜索某些内容时,结果将显示在search.php页面上。如果搜索词没有存储在数据库中,那么用户应该被转移到另一个名为getdata.php的页面,显示一条消息说we are grabbing your data,同时它将获取数据然后将其存储到数据库中然后再次重定向回用户到search.php并显示结果。

我已经熟悉了这个

的search.php

    $data = $_GET['q']
    //databse connection
    //empty check
    //mysql query
    $row = mysql_fetch_assoc($result);
    if($row > 0){

    //read $row
    //show result

}else{ //here what should I give `header` command wont work smoe times as it gives error like `header information is already send`. I heard that `header` command should be given on top of every php page

访问getdata.php

这里我不知道如何显示进度消息然后在数据库中插入数据然后重定向到search.php

2 个答案:

答案 0 :(得分:0)

标题功能需要在输出任何内容之前放置 - 不一定在页面顶部。确保在脚本页面上打开php标记之前没有内容。

答案 1 :(得分:0)

标题信息已发送意味着您在标题之前输出('location:xyz')。您可以通过收集变量中的输出并在最后回显它来阻止它。其他方式使用ob_start / ob_flush对。 http://php.net/manual/en/function.ob-start.php它也会缓冲输出。

有时在任何PHP代码之前都有原始输出,因为你用空行befoe启动你的php文件

很少但是如果你的文件是UTF8,但它有BOM也可能是一个问题(因为如果网站字符编码不是UTF8,可以打印BOM)