无法在codeigniter中自动/手动加载数据库库

我无法在CodeIgniter的默认解压缩代码中加载数据库库

1)通过autoload.php

$autoload['libraries'] = array('database'); 

2)内部控制器通过

 $this->load->library("database"); 

要么

 $CI =& get_instance(); $CI->load->database(); 

错误消息:由于发生内部服务器错误,无法显示页面。

环境: CodeIgniter 2.1.3,PHP 5.2.13上的IIS(ISAPI),MySQL(5.0.45-community-nt),Plesk。

我已经确认用纯PHP编写的代码允许我访问数据库。

只要我删除这个库,我可以看到页面。 我能够加载其他库,如会议,以及我的自定义库以及。 任何想法我失踪?

这里是我的数据库configuration设置:

 $active_record = TRUE; $db['default']['hostname'] = 'localhost'; $db['default']['username'] = 'username'; $db['default']['password'] = 'password'; $db['default']['database'] = 'databasename'; $db['default']['dbdriver'] = 'mysql'; $db['default']['dbprefix'] = ''; $db['default']['pconnect'] = TRUE; $db['default']['db_debug'] = TRUE; $db['default']['cache_on'] = FALSE; $db['default']['cachedir'] = ''; $db['default']['char_set'] = 'utf8'; $db['default']['dbcollat'] = 'utf8_general_ci'; $db['default']['swap_pre'] = ''; $db['default']['autoinit'] = TRUE; $db['default']['stricton'] = FALSE; 

Solutions Collecting From Web of "无法在codeigniter中自动/手动加载数据库库"

你可以无论如何检查你的服务器日志,或者你可以通过config.php启用CI日志

去你的config.php的第206行

 /* |-------------------------------------------------------------------------- | Error Logging Threshold |-------------------------------------------------------------------------- | | If you have enabled error logging, you can set an error threshold to | determine what gets logged. Threshold options are: | You can enable error logging by setting a threshold over zero. The | threshold determines what gets logged. Threshold options are: | | 0 = Disables logging, Error logging TURNED OFF | 1 = Error Messages (including PHP errors) | 2 = Debug Messages | 3 = Informational Messages | 4 = All Messages | | For a live site you'll usually only enable Errors (1) to be logged otherwise | your log files will fill up very fast. | */ $config['log_threshold'] = 4; 

把值设为4,检查你的/application文件夹中是否有775 chmod /logs目录,如果没有create that ,CI会自动在该目录下创建日志文件。

你将能够以这种方式检查任何CI错误

正如你从日志文件报告

在/ config目录下更改database.php第50行:

 $db['default']['pconnect'] = TRUE; 

 $db['default']['pconnect'] = FALSE; 

好的,根据日志,当我设置

$db['default']['pconnect'] = TRUE;

$db['default']['pconnect'] = FALSE;

数据库库被加载。

我有这个相同的问题,并花费大约5个小时通过堆栈跟踪和MySQL日志进行故障排除。 事实证明,原因是无关的,但我在这里张贴,以拯救任何人我遇到的麻烦。

我从零开始构建虚拟机,显然忘记安装php5的MySQL驱动程序。 我有的症状是完全一样的,一个空白的屏幕 – 没有任何反应。 对于任何人在将来看到这个,确保你有MySQL驱动程序! 30秒的修复。

看来你没有安装php5-mysql。 在您的EC2或您的VM中,请记住安装php5-mysql

sudo apt-get安装php5-mysql