2 回答

TA貢獻1993條經驗 獲得超6個贊
雖然您的示例不是 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 關注
- 120 瀏覽
添加回答
舉報