Php Can';t从外部服务器运行MySQL查询

Php Can';t从外部服务器运行MySQL查询,php,mysql,database,Php,Mysql,Database,我正在尝试从我的网站向服务器发送查询。我已允许使用root@“%”访问所有IP,并在my.ini中将绑定端口设置为0.0.0.0 看起来它正在连接到服务器,查询无法工作 $link=mysql_connect('server_ip', 'root', 'abcdefg') or die('Sorry, please try again another time.'); mysql_select_db('chars'); mysql_query("INSERT INTO `accounts` (

我正在尝试从我的网站向服务器发送查询。我已允许使用root@“%”访问所有IP,并在my.ini中将绑定端口设置为0.0.0.0

看起来它正在连接到服务器,查询无法工作

$link=mysql_connect('server_ip', 'root', 'abcdefg') or die('Sorry, please try again another time.');
mysql_select_db('chars');

mysql_query("INSERT INTO `accounts` (`uuid`, `name`) VALUES ('hi', 'hi')", $link);
echo "Done";
当我运行这个程序时,我在我的网页上看到了“Done”,但是这个查询实际上并没有将帐户“hi”放入数据库,我一直在对代码进行一些尝试,试图让它工作,这就是为什么它看起来很奇怪

非常感谢您的帮助。

请尝试:

mysql_select_db('chars', $link);
此外,就其价值而言:

1) 正如其他人已经提到的,您应该避免使用mysql。使用mysqli_uu或PDO


2) 也许您的代码只是为了测试,但是您应该避免使用root来进行这样的查询。创建另一个仅具有应用程序所需权限的用户,并使用该用户。实际上,您已经向世界开放了MySQL,特别是因为您使用了%通配符。

您需要检查
MySQL\u query()
中的返回值。失败时返回false,然后
echo mysql_error()听起来不错,我现在就试试。非常感谢。不过有一个重要的注意事项-新代码不应该使用现在已弃用的
mysql_*()
函数编写。您应该开始使用MySQLi或PDO,因为
mysql_*()
将在未来的PHP版本中删除。它在mysql_*()API的上下文中引入了PDO…它表示“未选择任何数据库”。不过我选择了一个数据库。