Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过PHP访问连接MySQL数据库被拒绝_Php_Mysql - Fatal编程技术网

通过PHP访问连接MySQL数据库被拒绝

通过PHP访问连接MySQL数据库被拒绝,php,mysql,Php,Mysql,我在尝试连接数据库时遇到“拒绝访问”错误。代码如下: <?php mysql_connect("00.00.00.00:00000","user","pass"); mysql_select_db("dbname"); $q=mysql_query("CALL GetMaterialInfo('".$_REQUEST['user']."','".$_REQUEST['pass']."','6c3e91d3')"); while($e=mysql_

我在尝试连接数据库时遇到“拒绝访问”错误。代码如下:

    <?php
    mysql_connect("00.00.00.00:00000","user","pass");
    mysql_select_db("dbname");

    $q=mysql_query("CALL  GetMaterialInfo('".$_REQUEST['user']."','".$_REQUEST['pass']."','6c3e91d3')");
    while($e=mysql_fetch_assoc($q))
        $output[]=$e;

    print(json_encode($output));

    mysql_close();
    ?>
我更改了主机的ip地址当然不全是零,还有用户名、密码和数据库名。我确信用户和密码、主机ip和端口号以及数据库名称都是正确的。我设法使用JDBC连接器连接到数据库allready,但通过PHP脚本它会出现以下错误:

<b>Warning</b>:  mysql_connect() [<a href='function.mysql-connect'>function.mysql-connect</a>]: Access denied for user 'username'@'192.168.1.1' (using password: YES) in <b>/www/zxq.net/t/e/s/testphpbach/htdocs/Connection.php</b> on line <b>2</b><br />

您可能使用相同的用户名/密码从phpmyadmin成功登录,但如果主机不是localhost,则无法从php登录。我也有同样的问题。转到mysql并授予该用户从所有主机%或运行php代码的特定主机的IP登录的权限。

您需要执行以下检查:

检查192.168.1.1是否包含在/etc/hosts中。如果数据库位于本地主机上,请尝试使用本地主机而不是ip。 检查端口是否打开。尝试使用telnet,例如ip/localhost . e、 g.telnet本地主机2222 检查数据库是否具有为您的用户名和密码授予的权限。要检查权限,请使用[对用户]显示授权。可以找到更多信息 如果这些都不起作用,也许可以尝试使用默认用户以外的其他用户。 让我知道会发生什么
加夫里尔,你救了我一个受伤的世界

我之前收到mysql错误消息“拒绝用户访问…”

php中远程访问问题的解决方案是授予对cPanel“%”中所有主机的访问权

此外,要了解mysql webhost和端口,请在数据库上执行sql命令“ShowVariables”。变量“hostname”和“port”将告诉您mysql数据库连接需要知道的内容


另一件需要注意的事情是确保您创建的用户已实际添加到数据库。

您是否有/etc/hosts中192.168.1.1的条目您没有使用正确的用户名和密码,或者用户不允许从主机访问。这是一个配置问题,错误消息会告诉您需要知道的一切。您可能没有使用正确的用户名和密码,或者所选用户名无法从该主机访问。检查用户名是否在mysql.users表中,并且是否具有正确的授权。