这道题看似简单,但我做不到。 事实上,我的代码测试与 mysql 数据库的连接,如果连接则仅返回 true,如果未连接则返回 false, 我使用jquery和Ajax来做到这一点,但不幸的是,我无法得到结果。 我的 html 页面有输入字段来提供数据库信息和一个按钮来测试连接,结果将显示在页面上(正确或错误)。
ajax 调用:
$.post(
'php/test_dbconnect.php',
{
db_host: $("#db_host").val(),
db_name: $("#db_name").val(),
db_user: $("#db_user").val(),
db_password: $("#db_password").val()
},
function(data){
$("#result").val(data);
},
'text',
);
test_dbconnect.php
$db_host = $_POST['db_host'];
$db_name = $_POST['db_name'];
$db_user = $_POST['db_user'];
$db_password = $_POST['db_password'];
$conn = mysqli_connect($db_host, $db_user, $db_password, $db_name );
if (mysqli_connect_errno()) {
$status = "Failed";
} else {
$status = "Success";
}
mysqli_close($conn);
echo $status;
当无法连接到数据库时,ajax不会返回“False”,并且页面显示html警报。 显示响应:
最佳答案
PHP 文档说:
$link = mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db");
if (!$link) {
...
}
尝试检查 mysqli_connect 结果而不是 mysqli_connect_errno。
关于php - 测试与数据库的连接,返回 true 或 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47003047/