用户
 找回密码
 入住 CI 中国社区
搜索
12
返回列表 发新帖
楼主: KevinDean
收起左侧

[已解决] 使用框架无法向MySQL数据库插入数据,疑连接有误

[复制链接]
 楼主| 发表于 2014-12-16 12:40:15 | 显示全部楼层
Closer 发表于 2014-12-16 09:28
你的 database 有載入嗎?
一般我都是在 config\autoload.php 自動載入
$autoload['libraries'] = array('d ...

您好!
1.database里面已经自动载入了!
2.按照您的说法,我设置$db['default']['db_debug'] = TRUE;之后,返回了错误
A Database Error Occurred

Unable to connect to your database server using the provided settings.

Filename: D:\Program Files (x86)\xampp\htdocs\biocommunity\system\database\DB_driver.php

Line Number: 124


我找到第124行,发现是
       

PHP复制代码
        $this->conn_id = ($this->pconnect == FALSE) ? $this->db_connect() : $this->db_pconnect();
 
                // No connection resource?  Throw an error
                if ( ! $this->conn_id)
                {
                        log_message('error', 'Unable to connect to the database');
 
                        if ($this->db_debug)
                        {
                                $this->display_error('db_unable_to_connect');                  //124行代码
                        }
                        return FALSE;
                }
 
复制代码
此外 我提供的设置是

  1. $active_group = 'default';
  2. $active_record = TRUE;

  3. $db['default']['hostname'] = 'localhost';
  4. $db['default']['username'] = 'root';
  5. $db['default']['password'] = 'liukai';
  6. $db['default']['database'] = 'biocommunity';
  7. $db['default']['dbdriver'] = 'mysql';
  8. $db['default']['dbprefix'] = '';
  9. $db['default']['pconnect'] = TRUE;
  10. $db['default']['db_debug'] = TRUE;
  11. $db['default']['cache_on'] = FALSE;
  12. $db['default']['cachedir'] = '';
  13. $db['default']['char_set'] = 'utf8';
  14. $db['default']['dbcollat'] = 'utf8_general_ci';
  15. $db['default']['swap_pre'] = '';
  16. $db['default']['autoinit'] = TRUE;
  17. $db['default']['stricton'] = FALSE;

  18. $db['default']['port'] = 5432;
复制代码

谢谢您的回答!!!



发表于 2014-12-16 13:30:09 | 显示全部楼层
通常資料庫錯誤的真正的原因不是他第幾行錯
而是這段 Unable to connect to your database server using the provided settings.
他告訴你資料庫無法依照配置正確連線

關於 port 號的問題還沒遇過
所以沒辦法給你太多建議
————————————————————————
因為我踏入 PHP 和 CI 界還不到半年
所以只會照著基本流程來除錯
你試著去檢查或跟著我的步驟去創建新的試試

1. 確認 XAMPP 的 mysql 和 apache 有啟動
1. 檢查資料庫名稱正確 (常見的是 coool 打成 cool ... 等等 )
2. 檢查編碼是否為 utf8_general_ci
3. 建立新的使用者,不要使用 root

 
 楼主| 发表于 2014-12-16 14:49:26 | 显示全部楼层
您好!
去stackoverflow  上面  http://stackoverflow.com/questions/22533644/codeigniter-error-unable-to-connect-to-database-using-the-provided-settings
按照文中的方法  Go to system/database/mysql/mysql_driver and in db_connect method delete the @ from @mysql_connect($this->hostname, $this->username, $this->password, TRUE);  
去掉了@符号之后 提示如下错误
A PHP Error was encountered

Severity: 8192

Message: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead

Filename: mysql/mysql_driver.php

Line Number: 73

A PHP Error was encountered

Severity: Warning

Message: mysql_connect():

Filename: mysql/mysql_driver.php

Line Number: 73

于是将默认数据库改成了  $db['default']['dbdriver'] = 'mysqli';  

以上的两个错误消失了,现在又回到了原点

A Database Error Occurred

Unable to connect to your database server using the provided settings.

Filename: D:\Program Files (x86)\xampp\htdocs\biocommunity\system\database\DB_driver.php

Line Number: 124

这下是真 走投无路了。。。


发表于 2014-12-16 14:57:56 | 显示全部楼层
KevinDean 发表于 2014-12-16 14:49
您好!
去stackoverflow  上面  http://stackoverflow.com/questions/22533644/codeigniter-error-unable-t ...

我會刪掉重灌弄個新的 XAMPP + CI
這樣會比較快
 楼主| 发表于 2014-12-16 15:05:05 | 显示全部楼层
Closer 发表于 2014-12-16 14:57
我會刪掉重灌弄個新的 XAMPP + CI
這樣會比較快

您好!
我仔细查看了 stackovewflow上的回答,发现他的端口号是 3306 ,于是我尝试修改了一下,发现数据库可以正确插入了,当然也有可能是
修改了  $db['default']['dbdriver'] = 'mysqli'; 的原因,因为我修改了 这两个地方。
下载下来的CI默认配置  以及 官网 http://codeigniter.org.cn/user_guide/database/configuration.html 上的默认端口号都是5432 。
最后感谢您百忙之中抽出时间耐心的观看并回答我的问题, 祝您工作愉快,身体健康!!!
发表于 2014-12-16 15:09:35 | 显示全部楼层
KevinDean 发表于 2014-12-16 15:05
您好!
我仔细查看了 stackovewflow上的回答,发现他的端口号是 3306 ,于是我尝试修改了一下,发现数据 ...

感覺沒幫到甚麼忙
你自己解決了 XD

加油啊!
 楼主| 发表于 2014-12-16 15:26:19 | 显示全部楼层
Closer 发表于 2014-12-16 15:09
感覺沒幫到甚麼忙
你自己解決了 XD

您能抽出时间并尝试给出解决问题的方案本身就是帮很大的忙了,真的很感谢!!!
大家一起加油~~~

本版积分规则