sql >> Databáze >  >> RDS >> Mysql

Více vložek s CHOP

Několik věcí:

  1. Odstraňte druhý příkaz Prepare uvnitř for smyčka
  2. Přidejte vázané parametry do VALUES() příkazu SQL
  3. Indexujte $images pole s for smyčkový iterátor nebo použijte foreach

Viz upravený for smyčka:

$stmt = $this->db->prepare("INSERT INTO images (category_id, dir_image) 
                            VALUES (:category_id, :dir_image)");

$stmt->bindParam(":category_id" ,$lastId); 
$stmt->bindParam(":dir_image", $image);
for ($i = 0; $i < count($images); $i++){
    $image = $images[$i];
    $stmt->execute();
} 

Případně pomocí foreach smyčka (za předpokladu jednorozměrného pole) :

$stmt = $this->db->prepare("INSERT INTO images (category_id, dir_image) 
                            VALUES (:category_id, :dir_image)");

$stmt->bindParam(":category_id", $lastId); 
$stmt->bindParam(":dir_image", $item);
foreach ($images as $item){
    $stmt->execute();
} 



  1. SQL dotaz, který vrací všechna data, která nejsou v tabulce použita

  2. Vztah mezi katalogem, schématem, uživatelem a instancí databáze

  3. Vícevláknová C# aplikace s voláním databáze SQL Server

  4. MySQL - vytvoření pohledu pomocí poddotazu v klauzuli FROM