将2个表中的行从一个数据库复制到另一个数据库中的1个表,但在PHP中复制相同的服

问题描述 投票:0回答:1

嗨大家好,所以我有这个代码,但当我运行它新的数据库是空的我真的不知道为什么没有错误日志,这里是我的代码:

<?php
$db_host="localhost";
$db_nombre="****";
$db_nombre2="*****";
$db_usuario="****";
$db_password="*****";
ini_set('memory_limit','500M');

$conexion=mysqli_connect($db_host,$db_usuario,$db_password,$db_nombre);
$conexion2=mysqli_connect($db_host,$db_usuario,$db_password,$db_nombre2);

$data = mysqli_query($conexion,"SELECT v.id, v.userid,v.dueDate, v.status, c.firstname, c.lastname, c.phonenumber FROM tblinvoices v, tblclients c WHERE v.dueDate > '2017-12-10'");
$values = Array();


while ($row = mysqli_fetch_assoc($data)) {

$row[id] = mysqli_real_escape_string($conexion,$row['id']);
$row[userid] = mysqli_real_escape_string($conexion,$row['userid']);
$row[duedate] = mysqli_real_escape_string($conexion,$row['duedate']);
$row[status] = mysqli_real_escape_string($conexion,$row['status']);
$row[firstname] =     mysqli_real_escape_string($conexion,$row['lastname']);
$row[lastname] = mysqli_real_escape_string($conexion,$row['lastname']);
$row[phonenumber] = mysqli_real_escape_string($conexion,$row['phonenumber']);

$values[]='("$row[id]","$row[userid]""$row[duedate]","$row[status]","$row[firstname]","$row[lastname]","$row[phonenumber]")';
}


mysqli_query($conexion2,'INSERT INTO cobranzaSemanal (idInVoice,idUser,dueDate,status,firstName,lastName,phoneNumber) VALUES '.implode(',',$values)."");

?>

谢谢!

php mysql
1个回答
0
投票

假设两个数据库的用户名和密码相同,您应该能够像这样组合这两个查询

$sql="insert into `$db_nombre2`.`cobranzaSemanal` ( `idInVoice`, `idUser`, `dueDate`, `status`, `firstName`, `lastName`, `phoneNumber` )
    (
        select v.`id`, v.`userid`, v.`duedate`, v.`status`, c.`firstname`, c.`lastname`, c.`phonenumber`
        from `$db_nombre`.`tblinvoices` v, `tblclients` c 
        where v.`duedate` > '2017-12-10'
    )";
© www.soinside.com 2019 - 2024. All rights reserved.