右,
我正在使用codeigniter构建登录系统。它工作正常,直到它在尝试查看网站时开始抛出错误。所以我花了几个小时在Google上试图找出可能出错的地方。我已设法将问题缩小到自动加载库
第一个错误是:
Unable to connect to your database server using the provided settings.
Filename: core/Loader.php
Line Number: 346
如果我从autoload.php
中的libraries数组中删除'database',则会自行更正$autoload['libraries'] = array();
第二个错误来自自动加载会话。错误如下:
The Encrypt library requires the Mcrypt extension.
现在,我不太确定会话,但我知道我的数据库设置很好。
在没有任何问题的情况下,我可以在模型中手动加载数据时将数据传递到我的数据库中,如下所示:
$this->load->database();
所以我的问题是,为什么自动加载会突然抛出这些错误?有没有人有任何建议?
提前致谢
答案 0 :(得分:1)
我认为您使用新版本的CodeIgniter 2.2.0
所以请检查
https://ellislab.com/codeigniter/user-guide/installation/upgrade_220.html
或将librarie Encrypt.php替换为system \ libraries文件夹中的旧版本librarie
我认为这应该是有效的。
答案 1 :(得分:1)
确保使用Web服务器加载适当的Mcrypt扩展。如果您的服务器配置支持,您可以随时在php.ini文件中添加以下extension=mcrypt.so
。
如果之前一切正常,似乎您对服务器配置进行了更改,从而触发了问题。据我所知和遇到的情况,CI 2有一些问题可能会产生这些错误。尝试运行不同版本的PHP。版本5.3或5.4是安全的解决方案。