Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Einfügen mehrerer Zeilen in eine Tabelle mit PHP

MySQL kann mehrere Zeilen in eine einzige Abfrage einfügen. Ich habe Ihren Code so nah wie möglich am Original belassen. Denken Sie daran, dass dies bei einer großen Datenmenge zu einer großen Abfrage führen kann, die größer sein könnte als das, was MySQL akzeptiert.

include_once 'include.php';

$parts = array();    
foreach($_POST['vsr'] as $row=>$vsr) {
   $vsr=mysql_real_escape_string($vsr);
   $ofice=mysql_real_escape_string($_POST['ofice'][$row]);
   $date=mysql_real_escape_string($_POST['date'][$row]);
   $type=mysql_real_escape_string($_POST['type'][$row]);
   $qty=mysql_real_escape_string($_POST['qty'][$row]);
   $uprice=mysql_real_escape_string($_POST['uprice'][$row]);
   $tprice=mysql_real_escape_string($_POST['tprice'][$row]);

   $parts[] = "('$vsr','$ofice','$date','$type','$qty','$uprice','$tprice')";
}

$sql = "INSERT INTO maint_track (`vsr`, `ofice`, `date`, `type`, `qty`, `uprice`,
`tprice`) VALUES " . implode(', ', $parts);

$result = mysql_query($sql, $con);