当我尝试连接到数据库时,出现此错误:
A PHP Error was encountered
Severity: Warning
Message: mysqli::real_connect(): (HY000/1044): Access denied for user ''@'localhost' to database 'dm_receiver'
Filename: mysqli/mysqli_driver.php
Line Number: 133
Backtrace:
File: C:\xampp\htdocs\DataMigrator\ci_my_app\models\Connection_model.php Line: 111 Function: database
File: C:\xampp\htdocs\DataMigrator\ci_my_app\models\ReadDatabase_model.php Line: 7 Function: establish
File: C:\xampp\htdocs\DataMigrator\ci_my_app\controllers\Home.php Line: 7 Function: model
File: C:\xampp\htdocs\DataMigrator\index.php Line: 292 Function: require_once
A Database Error Occurred
Unable to connect to your database server using the provided settings.
Filename: C:/xampp/htdocs/DataMigrator/ci_my_app/models/ReadDatabase_model.php
Line Number: 7
我故意指定了错误的用户名,以测试无法获得数据库连接时发生的情况。好吧,那就是我得到的。如果发生这种情况,我想隐藏此错误并回显我自己的消息。我怎么做?
编辑:让我以另一种方式问我的问题。当我使用$ this-> db-> get('mytable');我可能会遇到同样的错误。这可能是因为主机名,数据库名,用户名或密码错误。因此,我如何找出其中哪一个不正确并回声,例如当心,您的数据库名称错误?
最佳答案
您可以通过编辑index.php
文件来关闭生产中的错误消息:
define('ENVIRONMENT', 'production');
然后使用您的代码检查数据库中发生的情况,或编辑
application/errors/error_db.php
定义自定义错误页面。
关于php - 隐藏Codeigniter错误并回显自定义错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28532208/