Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Codeigniter错误消息无法修改标头信息_Php_Codeigniter - Fatal编程技术网

Php Codeigniter错误消息无法修改标头信息

Php Codeigniter错误消息无法修改标头信息,php,codeigniter,Php,Codeigniter,我在运行php CodeIgniter项目时收到以下错误消息: 遇到一个PHP错误 严重性:警告 消息:无法修改标题信息-标题已由发送 (输出开始于 C:\AppServ\www\tree\application\models\mtree.php:17) 文件名:core/Common.php 电话号码:442 第17行: echo $row->members_id . "</br>"; echo$row->members\u id。“”; 这是我的模型函数: functi

我在运行php CodeIgniter项目时收到以下错误消息:

遇到一个PHP错误

严重性:警告

消息:无法修改标题信息-标题已由发送 (输出开始于 C:\AppServ\www\tree\application\models\mtree.php:17)

文件名:core/Common.php

电话号码:442

第17行:

echo $row->members_id . "</br>";
echo$row->members\u id。“
”;
这是我的模型函数:

function convert_all() {
    $this->db->empty_table('table1');
    $this->db->empty_table('table2');
    $this->db->query("INSERT INTO `table1` (`members_id`, `members_username`);
    $query = $this->db->get('table2');
    foreach ($query->result() as $row) {
        if ($row->members_id > 1) {
            echo $row->members_id . "</br>";
        }
        if ($this->isadvanced($row->members_id, $row->members_direct_id)) {
            $this->insert_to_right($row, $row->members_direct_id);
        } else {
            $this->insert_to_left($row, $row->members_direct_id);
        }
    }
}
function convert_all(){
$this->db->empty_表('table1');
$this->db->empty_表('table2');
$this->db->query(“插入到'table1'('members\u id','members\u username');
$query=$this->db->get('table2');
foreach($query->result()作为$row){
如果($row->members\u id>1){
echo$row->members_id.“
”; } 如果($this->isadvanced($row->members\u id,$row->members\u direct\u id)){ $this->insert_to_right($row,$row->members_direct_id); }否则{ $this->insert_to_left($row,$row->members_direct_id); } } }
在使用codeigniter时,最好只在视图中使用
echo

“在任何地方回声”会将一些数据随机发送到浏览器,之后您将无法修改标题(这包括尝试重定向、设置内容类型等)

您应该重新组织代码,以便,
echo
仅在视图中完成。这将解决Codeigniter中的标题问题


这还包括在非视图php文件中的右大括号“
}”
”后面的额外空格。

使用codeigniter时,最好只在视图中使用
echo

“在任何地方回声”会将一些数据随机发送到浏览器,之后您将无法修改标题(这包括尝试重定向、设置内容类型等)

您应该重新组织代码,以便,
echo
仅在视图中完成。这将解决Codeigniter中的标题问题


这还包括右大括号“
}?>
"在非查看php文件中。

在调用header函数之前,不能显示任何内容。不应显示任何形式的模型或控制器,以避免此类错误。如果要显示来自控制器或模型的内容,则应将输出存储到缓冲区,而不是发送到浏览器。可以存储输出在调用
header()
函数之前,使用
ob\u start()
函数放入缓冲区。然后,您可以执行以下操作

if(true)
{
    header("Location:http://google.com");
}
else
{
   ob_end_flush();
}

在调用header函数之前,不能显示任何内容。不应显示任何形式的模型或控制器以避免此类错误。如果要显示来自控制器或模型的内容,则应将输出存储到缓冲区,而不是发送到浏览器。可以使用header()函数之前的de>ob\u start()函数。然后您可以执行以下操作

if(true)
{
    header("Location:http://google.com");
}
else
{
   ob_end_flush();
}

这是您的问题-echo$row->members\u id。“;--正如上面的回答所说,不要在控制器中回显某些内容,请在视图中按此操作-始终这是您的问题-echo$row->members\u id。“”正如上面的回答所说,不要在你的控制器中重复某些东西,在视图中推动它-总是

我认为这会很有帮助
在你的
应用程序/config/config.php
文件中使用
$config['sess\u save\u path']=sys\u get\u temp\u dir()
而不是
$config['sess\u save\u path']=NULL;
,我想这会很有帮助
应用程序/config/config.php
文件中使用
$config['sess\u save\u path']]=sys\u get\u temp\u dir()
而不是
$config['sess\u save\u path']=NULL;
文件中使用
而不是
不相关的:您在语句末尾缺少引号:$this->db->query(“插入
表1
members\u id
members\u username
);在调用
header
函数之前发送给用户的某些内容导致的错误。您提供的代码没有提供足够的信息来帮助调试。请阅读有关错误的详细信息:在此处查看感谢shuvo的帮助相关:此语句末尾缺少引号:$this->db->query(“插入
表1
成员id
成员用户名
);在调用
header
函数之前发送给用户的某些内容导致的错误。您提供的代码没有提供足够的信息来帮助调试。请阅读有关错误的详细信息:查看此处感谢shuvo仅在视图内帮助Echo。+1echo仅在视图内。+1