成功插入查询后,PHP header()不会重定向

时间:2014-07-23 14:46:43

标签: php html html5 mysqli phpmyadmin

注意:相对较新的PHP,请原谅我在解释代码时所犯的任何错误。

我有一个注册表单,由registration.php处理,并进行所有错误检查以查看用户是否已经注册等。

成功注册后:我显示此消息。

if ($query_new_user_insert) {
$this->messages[] = "Your account has been created successfully. You can now log in.";
}

现在我正在尝试重定向回登录页面而不是:

if ($query_new_user_insert) {
header("Location: http://localhost:8888/login/index.php");
}

我目前的流程出了什么问题?

更新

Warning: Cannot modify header information - headers already sent by (output started at /Applications/MAMP/htdocs/login/views/header.php:63) in /Applications/MAMP/htdocs/login/classes/Registration.php on line 109

谢谢。

1 个答案:

答案 0 :(得分:1)

header()命令仅在尚未打印输出的情况下才有效。

http://php.net/manual/en/function.header.php

  

请记住,在任何实际输出之前必须调用header()   通过普通HTML标记,文件中的空行或PHP

发送

header.php的第63行,其他东西已打印出一些输出。您必须在该行之前放置header()命令,或确保第63行确实在代码中的某个时刻显示其内容。