宝塔面板,php连接MySQL数据库

img


请问这个问题怎么解决,就是反复更改源码但是一直连不上数据库
源码:

<?php
    //声明变量

    $username = isset($_POST['username'])?$_POST['username']:"";
    $password = isset($_POST['password'])?$_POST['password']:"";
    $re_password = isset($_POST['re_password'])?$_POST['re_password']:"";
    $sex = isset($_POST['sex'])?$_POST['sex']:"";
    $qq = isset($_POST['qq'])?$_POST['qq']:"";
    $email = isset($_POST['email'])?$_POST['email']:"";
    $phone = isset($_POST['phone'])?$_POST['phone']:"";
    $address = isset($_POST['address'])?$_POST['address']:"";

    if($password == $re_password) {
        //建立连接
        $conn = mysqli_connect('101.42.246.250','uehsystem_eu_org','pHAE5p6cTjPaxLey','php');
        //准备SQL语句,查询用户名
        $sql_select="SELECT username FROM User WHERE username = '$username'";
        //执行SQL语句
        $ret = mysqli_query($conn,$sql_select);
        $row = $ret->fetch_array($ret);
        //判断用户名是否已存在
        if($username == $row['username']) {
            //用户名已存在,显示提示信息
            header("Location:register.php?err=1");
        } else {

            //用户名不存在,插入数据
            //准备SQL语句
            $sql_insert = "INSERT INTO User(username,password,sex,qq,email,phone,address) VALUES('$username','$password','$sex','$qq','$email','$phone','$address')";
            //执行SQL语句
            mysqli_query($conn,$sql_insert);
            header("Location:register.php?err=3");
        }

        //关闭数据库
        mysqli_close($conn);
    } else {
        header("Location:register.php?err=2");
    }

?>
?>

【以下回答由 GPT 生成】

根据您提供的代码和问题描述,我发现您的连接配置中存在一些问题。以下是一些可能的解决方案:

  1. 确认MySQL服务器是否运行:首先,您需要确认您的MySQL服务器是否正在运行。您可以通过命令行或宝塔面板查看MySQL服务器的运行状态。

  2. 确保连接参数正确:您的连接参数中包含了MySQL服务器的IP地址、用户名、密码和数据库名。请确保这些参数正确。您可以在宝塔面板中的MySQL设置中找到这些参数。

  3. 检查网络连接:请确保您的服务器能够访问MySQL服务器的IP地址和端口。您可以尝试使用telnet命令检查网络连接是否正常。

  4. 检查防火墙设置:有时候防火墙设置可能会阻止您的服务器与MySQL进行连接。请检查服务器的防火墙设置,确保允许通过MySQL的IP地址和端口进行连接。

  5. 检查MySQL用户权限:请确保您的MySQL用户具有足够的权限来连接MySQL数据库。您可以在宝塔面板中检查和配置MySQL用户的权限。

  6. 检查表和数据库名称:请确保您的MySQL服务器上存在名为"php"的数据库,且在该数据库中有名为"User"的表。

综上所述,您可以按照以下步骤逐个进行排查和修正:

<?php
    $username = isset($_POST['username']) ? $_POST['username'] : '';
    $password = isset($_POST['password']) ? $_POST['password'] : '';
    $re_password = isset($_POST['re_password']) ? $_POST['re_password'] : '';
    $sex = isset($_POST['sex']) ? $_POST['sex'] : '';
    $qq = isset($_POST['qq']) ? $_POST['qq'] : '';
    $email = isset($_POST['email']) ? $_POST['email'] : '';
    $phone = isset($_POST['phone']) ? $_POST['phone'] : '';
    $address = isset($_POST['address']) ? $_POST['address'] : '';

    if ($password == $re_password) {
        $conn = mysqli_connect('正确的MySQL服务器IP地址', '正确的用户名', '正确的密码', '正确的数据库名');

        if (!$conn) {
            die("连接失败: " . mysqli_connect_error());
        }

        $sql_select = "SELECT username FROM User WHERE username = '$username'";
        $ret = mysqli_query($conn, $sql_select);
        ...

如果您尝试了以上解决方案仍然无法连接到MySQL数据库,我建议您联系宝塔面板的技术支持寻求进一步的帮助,他们可能能够为您提供更具体的解决方案。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^