什么原因导致PHP在完成脚本之前重定向头?

时间:2014-12-05 02:49:44

标签: php

在我的网站上,我使用PHP文件进行各种各样的事情,为人们提供帮助,创建帐户等等。我将有一个像这样的PHP文件:

<?php
    /*Does some sort of action to stored data on the server*/
    header('location: mysite.org');
?>

问题是,在实际更新PHP的其余部分之前,它会转到mysite.org 。这会导致问题,因为如果用户发布了一条消息,它就不会立即出现,只有在刷新1或2次之后才会出现。我怎么能解决这个问题?我正在使用发送POST请求的HTML表单访问这些PHP文件。

1 个答案:

答案 0 :(得分:0)

如果您想在某个&#39;操作后触发标题,请包含条件语句。例如,如果您要发送POST数据,则可以执行以下操作:

if(isset($_POST)){
  //do stuff here
header();
}

由于您在数据库中存储数据,因此可以在成功插入数据库后调用header()。

if(!$mysql_query){//if it fails
//do nothing
}
else{
header();
}