我在我的一个网站上有数据,我想在其他网站插入这些数据。这两个是在同一个server.at目前我必须导出mysql数据并导入到其他,然后执行此代码插入第二个域
我想直接链接,以便我可以从第一个网站发出数据请求并插入第二个网站。
我知道要发生这种情况我需要启用bind-address = 127.0.0.1到服务器的IP地址,我已经改变了这个
这是我的代码。
databaseconnect.php
<?php
$con=mysqli_connect("localhost","UserA","passwordA","databaseA");
if (mysqli_connect_errno($con))
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
?>
这里是我的插入代码,如果数据库是在website2中导入并运行的话,它可以工作。但是我想避免这种手动工作,并希望将不同网站的两个数据库链接到我的服务器上,并且我可以完全控制它们 此代码位于website2。
insert.php
<?
include('/home/website2/public_html/databaseconnect.php');
$res2 = $con->query("SELECT * FROM `website1_tableA` where status='0' order by id asc limit 30");
while($result = $res2->fetch_assoc()){
$cont=$result['content'];
$tit=$result['title'];
mysqli_query($con,"INSERT INTO website2_tableB (content,title) VALUES ('$cont','$tit')");
}
?>
答案 0 :(得分:1)
如果您了解必须使用2个连接,为什么不这样做?
<?php
$con = new mysqli("localhost","UserA","passwordA","databaseA");
$con2 = new mysqli("localhost","UserA","passwordA","databaseB");
$res = $con->query("SELECT * FROM `website1_tableA` where status='0' order by id asc limit 30");
while($result = $res->fetch_assoc())
{
$cont=$result['content'];
$tit=$result['title'];
$con2->query("INSERT INTO website2_tableB (content,title) VALUES ('$cont','$tit')");
}
答案 1 :(得分:0)
您使用&#34; $ con&#34;作为insert.php上的类,虽然它没有在databaseconnect.php上定义为类。
尝试更改databaseconnect.php:
<?php
$con = new mysqli("localhost","UserA","passwordA","databaseA");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
?>
和insert.php一样(我刚改变了最后一行):
<?
include('/home/website2/public_html/databaseconnect.php');
$res2 = $con->query("SELECT * FROM `website1_tableA` where status='0' order by id asc limit 30");
while($result = $res2->fetch_assoc()){
$cont=$result['content'];
$tit=$result['title'];
$con->query("INSERT INTO website2_tableB (content,title) VALUES ('$cont','$tit')");
}
?>
希望能够工作:)