我的网站上有一个部分,其中已注册访问权限(并且具有现有个人资料)的用户可以编辑自己的个人资料。当用户单击以保存配置文件更改时,会出现以下4个PHP错误。我的理解是,由于第一个错误,通常会出现几个错误,所以我希望解决第一个问题就是它所需要的。在这里,我将仅提供1号的详细信息,而不是粘贴如此多的代码。
遇到PHP错误
消息:使用未定义的常量WEBMASTER - 假设' WEBMASTER' 文件名:controllers / content.php第285行
消息:无法修改已经发送的头信息头(输出 从////system/core/Exceptions.php:185开始 文件名:libraries / Sessions.php 672行
消息:无法修改已经发送的头信息头(输出 从////system/core/Exceptions.php:185开始文件名: helpers / url_helper.php第542行
以下是1的代码。第285行以" $ permission"开头。
function edit($id="",$language=""){
//which users are allowed to see this file.
//* for everybody including those who are not registered
//admin (or any other specific type for )
$permission=array(ADMIN,WEBMASTER);
$next_page=site_url("/content/manage");
这里有什么明显的错误吗?
答案 0 :(得分:-2)
您需要定义常量:
DEFINE('WEBMASTER', 'webmaster content here')
关于已发送的'标题......这意味着当您已将输出发送到浏览器时,您正尝试修改标题。
答案 1 :(得分:-2)
首先,在数据发送完成后,您不能修改标题。
所以你应该在<!doctype html>
之前放置修改标题的所有内容。只需确保在第一个<?php
之前没有任何内容,即使不是一个空格。
示例:
<?php
// do some header modification
?>
<!doctype html>
<html xmlns="http://www.w3.org/1999/xhtml">
....
</html>
答案 2 :(得分:-2)
这意味着在使用header('Location:http://www.example.com/')这样的函数进行重定向之前,php文件中有一些输出! 你必须在调用标题函数之前注释所有“echo”“printf”或“html”。