我是CI的新手。只是想知道我哪里出错了。似乎我无法连接到我的数据库。所以我尝试在控制器中加载数据库,只是为了看它是否可以连接,我可以进行查询。我确实配置了database.php
并设置了所有内容。但它显示为此。
A PHP Error was encountered
Severity: Notice
Message: Undefined property: Blog::$db
Filename: controllers/blog.php
contollers / blog.php的
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Blog extends CI_Controller {
public function index() {
$this->load->model("blogmodel");
$articles = $this->blogmodel->get_articles_list();
echo $articles;
}
}
blogmodel.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Blogmodel extends CI_Model {
function get_articles_list() {
$list = $this->db->query("SELECT * FROM foo");
return $list;
}
}
希望你能帮助我。感谢。
答案 0 :(得分:1)
所以你有一个接受的答案:
最初的问题是您没有自动加载数据库库。在这个文件中:
application/config/autoload.php
您可以将数据库添加到列表中:
$autoload['libraries'] = array('database');
至于你的字符串问题 - get_article_list()返回一个对象。您可以使用$articles->result()
来迭代搜索结果,或使用$articles->num_rows()
之类的内容查看结果有多少等等。
所以你回应$文章的地方,你可能想要回应这样的事情:
foreach($articles->result() AS $article)
{
echo $article->title . "<br>";
}
$article->title
显然会替换为文章表中的实际字段。