从查询php mysql中添加多行

时间:2015-05-13 13:28:30

标签: php mysql insert

我正在尝试将查询结果添加到新的空表中,该表已经存在..

到目前为止,这是我的代码,没有出现任何错误,但它没有插入,

任何帮助都会很好......

<?php require_once('../Connections/OASDB.php');

mysql_select_db($database_OASDB, $OASDB);

$sql = "SELECT SnPf, InvoiceNo, CustomerName FROM VSTStbl000010 WHERE SnPf =   '40446'";
$result = mysql_query($sql) or die(mysql_error());

$INS = array();

while($row = mysql_fetch_assoc($result)) {
 $INS[] = $row;
}

foreach( $INS as $row ) {
$INS[] = '("'.mysql_real_escape_string($row['InvoiceNo']).'",   '.$row['CustomerName'].')';

mysql_query('INSERT INTO phptest (InvoiceNo, CustomerName) VALUES   '.implode(',', $INS));
}

?>

更新 -

我现在正在使用......

<?php require_once('../Connections/OASDB.php');

mysql_select_db($database_OASDB, $OASDB);

$sql = "SELECT SnPf, InvoiceNo, CustomerName FROM VSTStbl000010 WHERE SnPf =    '18490'";
$result = mysql_query($sql) or die(mysql_error());

$INS = array();

while($row = mysql_fetch_assoc($result)) {
$INS[] = $row;
}

foreach( $INS as $row ) {  
  mysql_query("INSERT INTO phptest (InvoiceNo, CustomerName) VALUES  (".$row['InvoiceNo'].", '".$row['CustomerName']."') or die(mysql_error()");
}

?>

不幸的是我回到没有错误仍然没有插入?

感谢目前为止提供的所有帮助..

2 个答案:

答案 0 :(得分:0)

每次放入数组时,都会向数组中添加另一个元素。

这完全可以解决所有问题,并使您的查询失败。

在您发布更新后,您错误地将PHP命令“die()”插入到查询中。你需要把它拿出来。

只需复制/粘贴我提供的代码,即拖放。

如果你这样做会有效吗......

mysql_select_db($database_OASDB, $OASDB);

$sql = "SELECT SnPf, InvoiceNo, CustomerName FROM VSTStbl000010 WHERE SnPf =   '40446'";
$result = mysql_query($sql) or die(mysql_error());

$INS = array();

while($row = mysql_fetch_assoc($result)) {
 $INS[] = $row;
}

foreach( $INS as $row ) {  
  mysql_query("INSERT INTO `phptest` (`InvoiceNo`, `CustomerName`) VALUES (".$row['InvoiceNo'].", '".$row['CustomerName']."')";
}

答案 1 :(得分:-1)

谢谢你臭名昭着,是的,我曾经使用过这个代码,现在正在处理这个代码..

再次感谢

AppDomain.CurrentDomain.AssemblyResolve