PHP Codeigniter错误:调用未定义的方法ci_db_mysql_driver :: result()

时间:2011-11-22 09:37:56

标签: php xml codeigniter

我试图使用codeigniter创建一个xml响应。运行代码时会抛出以下错误。

此页面包含以下错误:

第48行第1行的

错误:文档末尾的额外内容

<?php  
class Api extends CI_Controller{  

    function index()  
    {
        $this->load->helper('url', 'xml', 'security');
        echo '<em>oops! no parameters selected.</em>';

    }

    function authorize($email = 'blank', $password = 'blank')
    {
        header ("content-type: text/xml");
        echo '<?xml version="1.0" encoding="ISO-8859-1"?>';
        echo '<node>';

        if ($email == 'blank' AND $password == 'blank')
        {
                echo '<response>failed</response>';
        } 
        else 
        {
            $this->db->where('email_id', $email);
            $this->db->limit(1);
            $query = $this->db->from('lp_user_master');
            $this->get();
            $count = $this->db->count_all_results();

            if ($count > 0)
            {
                foreach ($query->result() as $row){
                    echo '<ip>'.$row->title.'</ip>';
                }
            }
        }
        echo '</node>';
    }
}
?>

1 个答案:

答案 0 :(得分:9)

你的代码错了:

$this->db->where('email_id', $email);
$this->db->limit(1);
$query = $this->db->from('lp_user_master');
$this->get();

应该是,而不是:

$this->db->where('email_id', $email);
$this->db->from('lp_user_master'); 
$this->db->limit(1);
$query = $this->db->get();

现在你可以调用$query->result(),因为实际获得表结果后结果资源就在那里