sql >> Database teknologi >  >> RDS >> Mysql

PHP:Gentag over flere arrays og byg SQL INSERT-forespørgsel

Brug blot en for() loop for at iterere over indekserne fra 0 til count($a) (du kan bruge et hvilket som helst af arrays, de har markeret for at have samme størrelse).

$sql = 'insert into xyz (a, b, c, d) values ';
for ($i = 0, $l = count($a); $i < $l; ++$i) {
     $sql .= "('".
         // it's really important to escape the input!
         mysqli_real_escape_string($link, $a[$i]).','.
         mysqli_real_escape_string($link, $b[$i]).','.
         mysqli_real_escape_string($link, $c[$i]).','.
         mysqli_real_escape_string($link, $d[$i]).
     "'), ";
}
$sql = substr($sql, 0, -2); // trim down the last ', '


  1. Opdater kolonner, hvis inputværdier ikke er null, ellers ignorer og behold de eksisterende værdier for kolonne i databasen

  2. MySQL-trigger for at sætte kolonne til max + 1 virker ikke

  3. Sådan fungerer TIMESTAMPADD() i MariaDB

  4. MySQL bedste måde at gemme lange strenge på