Warning: mysqli_connect(): (HY000/2002): No connection could be made because the target machine actively refused it. in E:\xampp\htdocs\ss\docs\regional.php on line 15
The connection to the database could not be established.
这是一个严重错误还是很容易被忽略?错误消息'The connection to the database could not be established.'
为expected to pop
,但not the warning text
。在这种情况下如何删除它。以下是我用过的代码。
$db = mysqli_connect('localhost', 'root', '', 'regional_data');
if(mysqli_connect_errno()) {die('The connection to the database could not be established.');}
编辑:我已经在开发区域停止了SQL来测试它,并且当时发生了消息。
答案 0 :(得分:1)
在您的开发环境中,启用display_errors设置是完全合法的。这是查看问题是否出错的最简单方法。
在生产环境中,您不会将其设置为on,因为用户通常不需要知道PHP是否出错 - 他甚至不应该这样做,因为这些消息可能包含针对攻击者的有价值的信息。这应仅通过die()
因此,如果禁用display_errors,输出中的警告将消失,但您确实希望在日志文件中显示此警告。不建议使用@
来抑制警告!
答案 1 :(得分:0)
由于您设置error_reporting
和display_errors
的方式,可能只会在您的开发环境中显示警告。
编辑:为了澄清一下,如果您的error_reporting级别在您的开发环境中包含警告,则它们可以包含在屏幕上显示的错误中。要进行测试,请将displays_errors
设置为0,如上面的mysqli连接之前。
答案 2 :(得分:-1)
您可以通过调用@
前面的函数来取消警告,但最好确保修复错误的来源。
e.g。 $db = @mysqli_connect(...)