我正在尝试使用简单的php脚本连接到远程WAMP服务器。我能够成功执行如下脚本:

<?php
    $counter = 0;
    while($counter < 20) {
        $counter++;
        echo $counter;
        echo "\n";
    }

    echo "Done! Counter: ";
    echo $counter;
    echo "\n";
?>


但是,无法在笔记本电脑上执行尝试连接到远程服务器的基本脚本,如下所示。以下行只是冻结,并且php脚本永远不会停止运行。我通过将cd放入文件目录并运行php test.php来执行它。

$link = mysqli_connect($db_host, $db_user, $db_pass, $db_database, $db_port) or die(mysqli_error($link));


打印bool(true)

var_dump(function_exists('mysqli_connect'));


我需要安装任何东西才能使其正常工作吗?我已经完成了所有通常的修复,更改了本地服务器上的.conf文件,并具有成功连接的Android应用程序,但是现在我只想在Terminal的MySQL表上执行操作,但无法执行。

最佳答案

查看mysqli_connect()生成的任何错误的正确调用是mysqli_connect_error()而不是mysqli_error($link));

因此将连接呼叫更改为

$link = mysqli_connect($db_host, $db_user,
                       $db_pass, $db_database,
                       $db_port)
          or die(mysqli_connect_error());


或按照建议in the manual

$link = mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db");

if (!$link) {
    echo "Error: Unable to connect to MySQL." . PHP_EOL;
    echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
    echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
    exit;
}


您还需要使用配置为允许从远程连接进行访问的Userid /密码。默认的root将不允许远程连接,并且不应对其进行修改以允许远程连接。

您可能会发现此page in the manual useful在MYSQL中创建新的用户帐户

10-08 07:58
查看更多