v2.5.2
Giriş yap

PDO ile Çoklu INSERT İşlemi

redline
1,786 defa görüntülendi ve 2 kişi tarafından değerlendirildi

Elimizde bulunan 2 dizi var. Bunlardan biri a dizisi olsun diğeri b dizisi.

a dizimizin içinde 3 eleman var. (A1,A2,A3)
b dizimizin içinde 2 eleman var. (B1,B2)

Bu elemanlar artabilir azalabilir.

Bu dizideki elemanları kullanarak INSERT işlemi yapmak. INSERT yapacağımız tablo örneği olarak;

ID |  A  |  B 
-------------
1  | A1  | B1
2  | A2  | B1
3  | A3  | B1
4  | A1  | B2
5  | A2  | B2
6  | A3  | B2

Şeklinde işlem yapmamız lazım. Yani elimizde bulunan elemanlarla her kombinasyonda eşleştirme yapmamız gerekiyor. Bir diğer örnekle gösterecek olsak;

a dizimizin içinde 2 eleman var. (C4,C5)
b dizimizin içinde 1 eleman var. (H9)

ID |  C  |  H 
-------------
1  | C4  | H9
2  | C5  | H9

Şeklinde bir INSERT işlemi yapmak istiyorum. Umarım anlatabilmişimdir, markdown editörünü de kullandıkça sevmeye başladım, ilk sorularım sorunluydu şimdi çözdüm editörü daha. :)

u2b3ki
1842 gün önce
    $a_element = ['a','a1','a2','a3','a4','a5'];
    $b_element = ['b','b1','b2','b3','b4','b5'];
    $c_element = ['c','c1','c2','c3','c4','c5'];
    $all = count($a_element); //toplamda kac tane update olajak sayisi $a_element id olabilir

    for($i = 0; $i < $all; $i++){

     /* this is demo 

      $result = $a_element[$i];
      $result .= $b_element[$i];
      $result .= $c_element[$i];
      echo'<pre>';
      print_r($result);
      echo'</pre>';
*/
      $statement = $db->prepare("INSERT INTO table_name (a_element, b_element, c_element,) VALUES ($a_element['$i'], $b_element['$i']), $c_element['$i'])");

      $result = $statement->execute(
        array(
          ':a_element' => $a_element['$i'],
          ':b_element' => $b_element['$i'],
          ':c_element' => $c_element['$i']
        )
      );
    }