Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 连接到任何数据库时出现CodeIgniter错误_Php_Database_Codeigniter - Fatal编程技术网

Php 连接到任何数据库时出现CodeIgniter错误

Php 连接到任何数据库时出现CodeIgniter错误,php,database,codeigniter,Php,Database,Codeigniter,我刚从他们的站点(版本3.0.3)下载了一个新的CI副本,并简单地配置了数据库并加载了它,但我遇到了错误 下面是我在config.php中的数据库配置 $db['default'] = array( 'dsn' => '', 'hostname' => 'localhost', 'username' => 'root', 'password' => '', 'database' => 'shortagesdb', 'dbdriver' => 'mysql'

我刚从他们的站点(版本3.0.3)下载了一个新的CI副本,并简单地配置了数据库并加载了它,但我遇到了错误

下面是我在config.php中的数据库配置

$db['default'] = array(
'dsn'   => '',
'hostname' => 'localhost',
'username' => 'root',
'password' => '',
'database' => 'shortagesdb',
'dbdriver' => 'mysql',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => TRUE,//(ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
))

这是我在控制器中所做的,我只是加载数据库

public function index()
{
    $this->load->database();
    $this->load->view('welcome_message');
}
这里没什么特别的,不管发生什么,我都会得到这个例外

PHP Fatal error:  Call to undefined function mysql_connect() in D:\Projects\ims\system\database\drivers\mysql\mysql_driver.php on line 136
任何帮助都将不胜感激

Codeigniter 3不支持MySQL

试试这个

$db['default'] = array(
'dsn'   => '',
'hostname' => 'localhost',
'username' => 'root', # check username
'password' => '', # check password
'database' => 'shortagesdb', # check DB name is correct
'dbdriver' => 'mysqli', # remove mysql
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'), # remove TRUE,
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE

Codeigniter 3不支持MySQL

试试这个

$db['default'] = array(
'dsn'   => '',
'hostname' => 'localhost',
'username' => 'root', # check username
'password' => '', # check password
'database' => 'shortagesdb', # check DB name is correct
'dbdriver' => 'mysqli', # remove mysql
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'), # remove TRUE,
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE

问题可能出在php.ini文件中,请转到php文件夹并在文本编辑器中打开该文件。现在查找扩展并取消注释:

extension=php_mysqli.dll

还要检查扩展路径是否正确指向php根目录中的ext文件夹。

问题可能出在php.ini文件中,请转到php文件夹并在文本编辑器中打开该文件。现在查找扩展并取消注释:

extension=php_mysqli.dll


还要检查扩展路径是否正确指向php根位置中的ext文件夹。

'dbdriver'=>'mysql'
更改为
'dbdriver'=>'mysqli'
,但我使用的是mysql或mssql,为什么要使用mysqli?mysqli意味着mysql得到了改进。所以,没什么好担心的。啊,你,让我来try@ChetanAmeta按照您的要求执行,再次出现此错误
PHP致命错误:调用未定义的函数mysqli_init()在第125行的D:\Projects\ims\system\database\drivers\mysqli\mysqli_driver.php中,将
'dbdriver'=>'mysql'
更改为
'dbdriver'=>'mysqli'
但我使用的是mysql或mssql,为什么我要使用mysqli?mysqli意味着mysql得到了改进。所以,没什么好担心的。啊,你,让我来try@ChetanAmeta按照您的要求执行后,再次出现此错误
PHP致命错误:在第125行的D:\Projects\ims\system\database\drivers\mysqli\mysqli\u driver.PHP中调用未定义的函数mysqli_init()
usename和密码正确。如果我想使用mssql服务器怎么办?我遇到了同样的错误,你不能在CI 3中使用mysql。如果我想使用mssql服务器,我需要做什么?不,你不能。或者使用ci2。MySQLi改进了MySQLi的安全性,正如您所建议的那样,现在出现了以下错误
PHP致命错误:在第125行的D:\Projects\ims\system\database\drivers\MySQLi\MySQLi\u driver.PHP中调用未定义的函数MySQLi_init()
usename和密码是正确的。如果我想使用mssql服务器怎么办?我遇到了同样的错误,你不能在CI 3中使用mysql。如果我想使用mssql服务器,我需要做什么?不,你不能。或者使用ci2。MySQLi改进了MySQLi的安全性,正如您所建议的,现在出现了这个错误
PHP致命错误:在第125行的D:\Projects\ims\system\database\drivers\MySQLi\MySQLi\u driver.PHP中调用未定义的函数MySQLi_init()
如果您使用的是php7,请确保使用php7的PHP.ini/etc/php/7.0/clif如果您正在使用php7,请确保使用php7的php.ini/etc/php/7.0/cli