无法加载数据库

时间:2011-07-28 09:54:11

标签: php database model-view-controller codeigniter

我有一个使用CodeIgniter框架的项目。在模型类中,我尝试从数据库加载数据,但浏览器返回一个非常奇怪的结果。页面返回看起来像:

load->database('demo', TRUE);}function getData(){...} 
(and follow are very much signs like China character +_+)

以下是user_model.php的内容:

class User_model extends CI_Model 
{
   function __construct() 
   {
       parent::__construct();
       #Line 6: $CI =& get_instance();
       $this->load->database('demo', TRUE);
   }

    function getData()
    {
       $query = $this->db->query("select * from user");

       if ($query->num_rows() < 0)
          show_error('Database is empty!');
       else
          return $query->result();
    }
}

我google了很多,并得到了一些解决方案,但没有一个能解决我的问题。

  • 我尝试重写构造函数(使用$ CI并通过$ CI-&gt; load-&gt;数据库重写下一行('demo',TRUE))

  • 我尝试使用$ db作为私有变量,分配$ this-&gt; $ db = $ this-&gt; load-&gt; database('demo',TRUE)......

请帮助我,我已经失去了2天。我无法解释中国角色如何在那里展示。这让我发疯了。

P / s:我的环境:Window XP SP3 / WAMP服务器2.1 / CodeIgniter 2.0.2 完成所有配置,系统可以顺利运行欢迎信息。

2 个答案:

答案 0 :(得分:1)

如果您的代码在浏览器中可见,我觉得脚本只是输出而不是执行。如果其他php脚本运行正常,您可能忘记了user_model.php中的开始<?php标记。

答案 1 :(得分:0)

class User_model extends CI_Model 
{
   function __construct() 
   {
       parent::__construct();
       #Line 6: $CI =& get_instance();
       $DB1 = $this->load->database('demo', TRUE);
   }

    function getData()
    {
       $query = $DB1->query("select * from user");

       if ($query->num_rows() < 0)
          show_error('Database is empty!');
       else
          return $query->result();
    }
}