所以我有一个由AJAX请求调用的脚本,它位于CI安装根目录下名为“ajax”的文件夹中。我的代码位于我的ajax文件的顶部:
define("BASEPATH", "../../system/");
include("../../application/config/database.php");
因此它成功地抓取了database.php文件,但它告诉我“没有选择数据库”。为什么呢?
答案 0 :(得分:0)
在模型中输出数据会破坏codeIgniter旨在实现的mvc的传统结构。但是mvc是一种设计模式并不是严格意义上的标准,所以除了你自己和其他将来会照顾你或者你的代码的人以外,你不会伤害任何人。
就像AndrewR建议的那样,为什么不对控制器进行ajax调用[再次,因为这是mvc的惯例]?如果它将在app文件夹之外,那么也许它不应该通过Web浏览器访问。
你也可以像$_CI =& get_instance();
一样抓取codeigniter的全局对象的实例,并加载像$db = $_CI->load('database');
这样的数据库对象
希望这有帮助!