Codeigniter : Showing error as ' Unable to sel

2019-04-27 11:36发布

I am using Windows XP and using EasyPHP as a server. I have integrated Codeigniter with TankAuth. But, when I try to open my assignment folder, it shows error as follows:

Unable to select the specified database: project

Filename: C:\Program Files\EasyPHP-12.1\www\assignment\system\database\DB_driver.php

Line Number: 140

The code inside my database .php is as follows"

$active_group = 'default';
$active_record = TRUE;

$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = 'root123';
$db['default']['database'] = 'project';
$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;

I have checked my database.php, inside it I have database name as 'project'.

I have tried with hostname both as 'localhost' and as '127.0.0.1', but none worked.

I have set my default controller to 'auth' i.e. default controller of TankAuth.

And have initialized 'database' library in the construct in 'auth' controller.

Just now I have tried the same thing using Wamp Server. But, got the same result.

Somewhere I read that I should try making $db['default']['pconnect'] and

$db['default']['db_debug'] to FALSE. But it didn't work.

And all the access permissions have been granted to database 'project'.

Is there anything that I should try to make it work?

Thanks in advance...

5条回答
狗以群分
2楼-- · 2019-04-27 12:19
Notice: SQL safe mode in effect – ignoring host/user/password information in
mysql_connect(): SQL safe mode in effect – ignoring host/user/password information in
This is caused due to your php.ini sql safe mode settings.
Login your php.ini file.
Go php.ini from apache and turn off sql.safe mode.

[SQL]
sql.safe_mode  = Off
Restart apache
查看更多
欢心
3楼-- · 2019-04-27 12:21

I was facing a similar problem but unfortunately none of the answers on any site helped. The weird thing was that I was easily able to connect to MySQL using simple PHP but in CodeIgniter I was getting this message.

Finally this solved my problem. Open the application/config/database.php file and change the following line:

$db['default']['dbdriver'] = 'mysql';

To:

$db['default']['dbdriver'] = 'mysqli';

This shift to mysqli saved by day.

查看更多
Summer. ? 凉城
4楼-- · 2019-04-27 12:22

The error is stating that it has successfully connected to your database software, but it cannot find the specified DB named project. Check your DB connections and make sure they are all correct -- it sounds like your database name should be assignment instead.

Edit: Check to make sure the DB user your are logging in as has permission to access the specified database, also.

查看更多
时光不老,我们不散
5楼-- · 2019-04-27 12:28

Maybe this will save someone sometime - I was using cPanel and it has a certain rule that a user has to be tied to a database to access it. I was getting the same error, but because I did not have the permissions, I could not access it.

In cPanel go to MySQL Databases, find your user and add this user to your database.

查看更多
在下西门庆
6楼-- · 2019-04-27 12:35

Try this: just refresh the db software. If you are using PHPMy Admin, refresh the page and try loading your PHP page. or if you have any stored procedure in your db, this may cause the problem. try removing the stored procedures.

查看更多
登录 后发表回答