连接到外部Mysql数据库

时间:2016-02-18 12:00:10

标签: php mysql database mysqli

我在连接我的免费数据库时遇到问题。 我在freesqldatabase.com上创建了一个免费的mysql数据库,以便尝试我的php脚本完成他的工作。主要目的是将数据从html表单(托管在不同的主机中,例如主机A)插入到数据库中的表中(在主机B中)。我尝试了很多次,但它说无法连接数据库。

这是错误:

The error is "Warning: mysqli_connect(): (HY000/2003): 
Can't connect to MySQL server on 'sql2.freesqldatabase.com' (110) 
in [HOST A]/core/try.php on line 6 ERROR: Could not connect. 
Can't connect to MySQL server on 'sql2.freesqldatabase.com' (110)"

所以这是我的PHP脚本:

    <?php

$link = mysqli_connect("sql2.freesqldatabase.com", "user", "password", "database_name");

// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}

// Attempt insert query execution
$sql = "INSERT INTO persons (person_id, first_name, last_name, email_address) VALUES (1, 'Peter', 'Parker', 'peterparker@mail.com')";
if(mysqli_query($link, $sql)){
    echo "Records added successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}

// Close connection
mysqli_close($link);
?>

这是我简单的html表单:

<form action="core/try.php" method="post" />

<p>Nome persona: <input type="text" name="person_id" /></p>
<p>nome <input type="text" name="first_name" /></p>

<p>cognome <input type="text" name="last_name" /></p>
<p>email <input type="text" name="email_address" /></p>

    <input type="submit" value="Submit" />

</form>

我做错了什么?!

2 个答案:

答案 0 :(得分:0)

根据您提供的连接设置和代码,似乎表persons不存在或缺失。我只能看到表tabella。我认为你必须先创建表persons。使用您提供的代码连接到数据库本身。这是我得到的错误:

ERROR: Could not able to execute INSERT INTO persons 
(person_id, first_name, last_name, email_address) 
VALUES (1, 'Peter', 'Parker', 'peterparker@mail.com'). 
Table 'sql2107307.persons' doesn't exist

答案 1 :(得分:-1)

您尚未使用创建sqldatabase时提供的密码和用户名,请从电子邮件中查看详细信息