繁体   English   中英

启用 Codeigniter 查询生成器

[英]Enable Codeigniter Query Builder

我正在使用 CodeIgniter v3.1.4,我想利用查询生成器。

据我所知,我需要做的就是在config/database.php中将$query_builder设置$query_builder TRUE,我已经完成了。 但是,当我尝试使用该类时,出现以下错误:

消息:调用未定义的方法 CI_DB_odbc_driver::where()

我正在使用 Wiredesignz 的 HMVC 实现,它覆盖(除其他外)Loader 类,通过它传输$query_builder变量。

我有点惊讶这个功能可以通过全局变量打开/关闭,而不是直接通过 db 配置数据。 尽管如此,我尝试打开和关闭它但没有成功。

不确定它是否相关,但我使用的是 ODBC 驱动程序,我的查询如下所示:

$this->db->where('userid', $userid)->set($data);

知道我缺少什么吗?

我今天在尝试过渡到 odbc 时偶然发现了同样的问题。

在 CI 3.1.0 中,他们在查询构建器上放弃了对 ODBC 的支持(在我看来,这首先否定了使用 QB 的原因)

原因是他们的实现导致了SQL注入漏洞; 然而他们似乎没有修复它的计划; 而是完全禁用 odbc 的 QB,将您锁定。

来源: https : //forum.codeigniter.com/thread-65803.html

“升级说明”: http : //www.codeigniter.com/user_guide/installation/upgrade_310.html

Github 问题说明修复的可能性: https : //github.com/bcit-ci/CodeIgniter/pull/5197

检查 application/config/database.php 中的以下选项:

$query_builder = TRUE;

如果您想使用 CI 的查询构建器类,则$query_builder应该为true

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM