2 回答
TA贡献1993条经验 获得超5个赞
虽然您的示例不是 100% 清楚,但当初学者在调用之前尝试输出页面的一部分时,这个错误最常发生在初学者身上header()
。
一旦您echo
输出了任何内容,就会发送标头,因此您需要确保任何调用都header()
发生在任何页面生成代码之前,无论是对标记外的 HTML 调用echo
还是简单的 HTML调用<?php ?>
。
这里的一个常见问题是无意中包含了一些空格,通常是<?php
在文件顶部的之前,或者在结束之后?>
。
当您使用 MVC 方法时,好的做法是只有您的模板/视图文件应该包含 HTML,并且任何 PHP 脚本的第一个字符应该是<?php
,并且您不应该?>
在文件末尾关闭以确保任何尾随空格不会包含在您的页面视图中。
TA贡献1826条经验 获得超6个赞
好的,我发现了问题。
我的路由器是为文章页面编写的:
else if (strpos($frontend->url, 'article.php'))
{
$frontend->article();
// Si l'utilisateur poste un commentaire sur un article
if (isset($_GET['action']) && $_GET['action'] == 'addComment')
$frontend->addComment($_GET['id'], $_POST['author'], $_POST['comment']);
}
它加载了我的文章页面,然后,如果提交了评论,它会在重定向处调用我的控制器函数 AddComment。我在加载文章页面之前放置了 If 语句,它工作正常!
感谢您的宝贵时间,也感谢让我按铃的 deceze。希望它可以帮助别人,我没有找到很多 MVC 结构的例子。
- 2 回答
- 0 关注
- 91 浏览
添加回答
举报