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,对于我的3个变量,我收到以下两条错误消息: 消息1)未定义变量:行 消息2)尝试获取非对象的属性 编辑:(最终找到了编辑按钮),因此3个变量是: $anatomic_code = $rows->NerveCode; $ProxAccess = $rows->ProxAccess; $DistAccess = $rows->DistAccess; 在我看来,正是这三行给了我这两个错误 我没有包括模型,因为我认为问题不在那里,更重要

对于我的3个变量,我收到以下两条错误消息:

消息1)未定义变量:行 消息2)尝试获取非对象的属性

编辑:(最终找到了编辑按钮),因此3个变量是:

        $anatomic_code = $rows->NerveCode;
        $ProxAccess = $rows->ProxAccess;
        $DistAccess = $rows->DistAccess;
在我看来,正是这三行给了我这两个错误

我没有包括模型,因为我认为问题不在那里,更重要的是,由于我之前的开发人员使用了许多不同的表来存储数据,所以它的代码相当多。。。不过,如果需要的话,我准备发布它

控制器->

function se_enkel_test()
    {
    $this->freakauth_light->check('submitter');
    $tech_num = $this->uri->segment(6);
    $this->load->model('view_single_test','',true);
    $data['query'] = $this->view_single_test->query();
    $data['query_tech_type'] =  $this->view_single_test->query_tech_type();
    $data['query_parameters'] =  $this->view_single_test->query_parameters();
    $data['query_tech_name'] =  $this->view_single_test->query_tech_name();
    $data['query_test'] =  $this->view_single_test->query_test();
    $data['query_temperat'] =  $this->view_single_test->query_temperat();
    $data['query_semiq'] =  $this->view_single_test->query_semiq();
    $data['query_conclusion'] =  $this->view_single_test->query_conclusion();
    $data['query_side'] =  $this->view_single_test->query_side();

    $this->load->model('mysql_create','',true);
    $data['dropdown_conclusion_diagnosis'] = $this->mysql_create->get_dropdown_conclusion($tech_num);
    $data['dropdown_conclusion_duration'] = $this->mysql_create->get_dropdown_duration_diagnosis();
    $data['dropdown_conclusion_severity'] = $this->mysql_create->get_dropdown_severity_diagnosis();

    $this->load->view('auh/se_enkel_test', $data);
    }
查看->

elseif ($struct_id == "3") {

            foreach($query->result() as $rows):
            if ($rows->NerveCode > 10000 ){
                echo "<h3>N." . $rows->NerveName . ") (" . $side->SideText.")</h3>";        

            }
            else {
                echo "<h3>N." . $rows->NerveName . " (" . $rows->ProxName . " - ";
                    if ($rows->Code < 3000) {
                        echo "m.";
                        }
                    echo $rows->DistName . ") ("  . $side->SideText.")</h3>";
            }
            endforeach;
            $anatomic_code = $rows->NerveCode;
            $ProxAccess = $rows->ProxAccess;
            $DistAccess = $rows->DistAccess;
    }

看起来您实际上并没有将查询结果传递给视图:

$data['query'] = $this->view_single_test->query();
没有看到模型,很难做出有根据的猜测。分配给$data['query']的值应该是结果对象。
不是最干净的,但请尝试返回
$query->result()并将其分配给控制器中的一个变量,然后将该变量传递给视图。

错误消息表示未定义$rows,这意味着$query->result()没有行。您在哪里执行查询?你确定你从数据库中得到了什么并且查询是正确的吗?你研究过错误消息了吗?他们一直都在讨论,如果他们对你来说还不是很清楚,那么现有答案中的一个解释应该能够帮助你理解正在发生的事情。至于你在这里提出的问题,请先阅读。告诉我们你有错误,却不告诉我们错误在哪里。关于哪些行上的变量/对象,这并没有真正的帮助。逐字引用错误消息!我只是忘记了,因为我太专注于把代码放进去了。现在我不知道如何“编辑”这篇文章,让你们知道其中的台词。。我很抱歉。编辑我找到了编辑按钮,现在更新了帖子。非常抱歉,在你问题的左下角,我上传了我模型中“查询”的部分。也许有帮助?我不知道你所说的$query->result()是什么意思;尝试返回$query->result();而不仅仅是$query;这给了我这个错误:致命错误:调用数组上的成员函数result()。当您开始返回
$query->result()
时,您是否记得在视图中仅为
$query
更改
$query->result()
?在我看来,我在foreach循环中调用查询,语法是什么样子的?我试图简单地删除“->result()”,所以它只显示$query。但是我得到了一个“致命的错误”。。它说我不能在foreach循环中调用它。。谢谢你这么努力地帮助我,我很感激!
$data['query'] = $this->view_single_test->query();