注意:相对较新的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
谢谢。
答案 0 :(得分:1)
header()
命令仅在尚未打印输出的情况下才有效。
http://php.net/manual/en/function.header.php:
请记住,在任何实际输出之前必须调用header() 通过普通HTML标记,文件中的空行或PHP
发送
在header.php
的第63行,其他东西已打印出一些输出。您必须在该行之前放置header()
命令,或确保第63行确实在代码中的某个时刻显示其内容。