-3

在没有标头重定向的情况下,插入可以完美地工作。我的问题是我正在使用面向对象方法的 MYSQLI 并且仍然是新手。当我在那里有标题重定向时,它会在浏览器中告诉我

“警告:无法修改标头信息 - 标头已由 /home/hawkwsco/public_html/admin/include/template/doc.inc.php:1 中的 /home/hawkwsco/public_html/admin/include/library 发送/functions/process/process.inc.php 在第 10 行"

我的代码如下:

<?php
require ($_SERVER['DOCUMENT_ROOT'].'/admin/include/config/config.inc.php');
$query = ("INSERT INTO page(pa_id, pa_page, pa_page_info) VALUES ('NULL', '{$_POST['page']}', '{$_POST['info']}')");
$mysqli->query($query);
header("Location: http://".$_SERVER['SERVER_NAME']."/admin/content.php");
exit;
?>

我究竟做错了什么?

4

1 回答 1

2

您所包含的文件很可能有一些正在输出的文本(即使文件末尾的换行符也足够了)导致输出在发送标头之前开始。我通常确保我的包含在末尾没有 ?> 以避免这个问题。

或者,您可以使用输出缓冲 (ob_start()) 来避免在您准备好之前发送任何输出。ob_start() 必须在任何输出生效之前调用。

于 2013-05-03T04:31:21.623 回答