从本地主机连接到服务器数据库 [英] Connect to server database from localhost
问题描述
我想做的是从本地主机连接到服务器数据库.
What I'm trying to do is connecting to server database from localhost.
$host = 'http://www.my-domain.com/phpmyadmin/';
$user = 'u5er';
$pass = 'pa55w0rd';
$db = 'db_name';
$con = mysqli_connect($host,$user,$pass,$db) or die("Error " . mysqli_error($con));
$sql = "SELECT col FROM test WHERE id = '1'";
$result = mysqli_query($con,$sql);
错误
Warning: mysqli_connect(): in C:\xampp\htdocs\sp_concord\cenova_nabidka\page\vytvor.php on line 362
Warning: mysqli_connect(): in C:\xampp\htdocs\sp_concord\cenova_nabidka\page\vytvor.php on line 362
Warning: mysqli_error() expects parameter 1 to be mysqli, boolean given in C:\xampp\htdocs\sp_concord\cenova_nabidka\page\vytvor.php on line 362
Error
是否可以解决?如何确定我的服务器是否允许外部连接?以及如何定义应该从哪个IP地址访问数据库?
Is it possible to resolve it? How to find out if my server allows external connections? And how to define from which IP addresses it should allow access to database?
谢谢您的任何建议.
好的,我已经将主机更改为my-domain.com,现在它报告了以下错误.我的IP无法访问MySQL服务器...
Ok, I have changed the host to my-domain.com and now it reports the following errors. My IP has no acces to MySQL server...
Warning: mysqli_connect(): (HY000/1130): Host '88.146.210.54' is not allowed to connect to this MySQL server in C:\xampp\htdocs\sp_concord\cenova_nabidka\page\vytvor.php on line 362
Failed to connect to MySQL: Host '88.146.210.54' is not allowed to connect to this MySQL server
Warning: mysqli_query() expects parameter 1 to be mysqli, boolean given in C:\xampp\htdocs\sp_concord\cenova_nabidka\page\vytvor.php on line 368
推荐答案
您的日志记录有以下错误:
Your logging has an error is on the following line:
$con = mysqli_connect($host,$user,$pass,$db) or die("Error " . mysqli_error($con));
$con
从未分配值(基mysqli_connect
失败),您将其传递给mysqli_error()
.
$con
is never assigned a value (base mysqli_connect
failed) and you are passing it to mysqli_error()
.
请尝试以下操作-它会为您提供有关为什么无法连接的信息:
Try the following instead - it will give you the information you need about why you cannot connect:
$con = mysqli_connect($host,$user,$pass,$db);
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
正如Dagon用户所说,您的主机字符串应类似于my-domain.com
,甚至更可能是localhost
而不是http://www.my-domain.com/phpmyadmin/
As user Dagon mentioned, your host string should be something like my-domain.com
or even more likely, localhost
and not http://www.my-domain.com/phpmyadmin/
这篇关于从本地主机连接到服务器数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!