Tips Mudah Insert Banyak Data MySQL dengan PHP

Discussion in 'Programming' started by FlintSky, May 20, 2015.

  1. FlintSky

    FlintSky Member

    Joined:
    May 20, 2015
    Messages:
    63
    Likes Received:
    6
    Trophy Points:
    8
    Dalam penyimpanan banyak data pada MySQL dengan PHP kita bisa menggunakan array dan cara ini merupakan cara yang sangat populer pada kalangan developer. tapi tahukah anda jika metode yang kita gunakan selama ini salah?? salah disini bukan berarti salah secara penggunaan kode melainkan keefektifan dari penggunaan code dalam sintax php.
    coba anda perhatikan syntax php dibawah ini yang merupakan sering kita temui atau bahkan kita menggunakannya. perhatikan baik-baik:
    PHP:
    <?php
        $array 
    = array(    '1'    =>'syahrini',
                
    '2'    =>'duo sergiala',
                
    '3'    => 'kumar',
                
    '4'    => 'pak Zanni'
                
    );
       
        
    $conn mysql_connect('db_user''db_password' );
        
    mysql_select_db'mhs_db'$conn )
        foreach( 
    $array as $key=>$value )
        {
            
    $sql "INSERT INTO mahasiswa ( nim, nama_mhs) VALUES ($key$value)";
            
    mysql_query$sql$conn );
        }
    ?>
    kode diatas memang benar, tetapi cara diatas kurang efektif. karena dengan kode seperti diatas kita akan mengulang query sebanyak jumlah data. jadi jika jumlah data memiliki 100 baris,maka query akan terus diulang hingga 100 kali dan sistem akan merequest ke database sebanyak 100 kali. kalau hanya untuk project rumahan atau tugas kuliah mungkin tidak terasa. tapi bayangkan jika sistem yang kita buat digunakan untuk kelas produksi, yang memiliki inputan data ribuan per detiknya. ini akan melemahkan kinerja sistem. bukan tidak mungkin aplikasi anda akan ngadat.

    oleh karena itu disini saya akan memberikan tips bagaimana cara insert data yang baik dan benar.

    PHP:
    <?php

        $array 
    = array(    '1'    =>'syahrini',
                
    '2'    =>'duo sergiala',
                
    '3'    => 'kumar',
                
    '4'    => 'pak Zanni'
                
    );

        
    $sql "INSERT INTO mahasiswa (name, description ) VALUES ";

        
    $it = new ArrayIterator$array );

        
    $cit = new CachingIterator$it );

        foreach ( 
    $cit as $value )
        {
            
    $sql .= "('".$cit->key()."','" .$cit->current()."')";
            if( 
    $cit->hasNext() )
            {
                
    $sql .= ",";
            }
        }
        
    $conn mysql_connect('db_user''db_password' );
        
    mysql_select_db'mhs_db'$conn );
        
    mysql_query$sql$conn );

    ?>
    Dengan menggunakan kode diatas query tidak akan diulang, melainkan hanya menambah baris untuk insert dalam satu baris query.

    Sekian artikel tentang Tips Mudah Insert Banyak Data MySQL dengan PHP.

    jangan lupa re-share jika ini bermanfaat bagi anda.

    sumber :
    Tips Mudah Insert Banyak Data MySQL dengan PHP
     
  2. baba22

    baba22 New Member

    Joined:
    Jun 4, 2015
    Messages:
    4
    Likes Received:
    0
    Trophy Points:
    1
    keren tipsnya, tips yang anda bagikan sangat luar biasa gan dan berguna untuk meningkatkan perfoma web
     
  3. paket wisata jogja75

    paket wisata jogja75 New Member

    Joined:
    Sep 2, 2015
    Messages:
    7
    Likes Received:
    0
    Trophy Points:
    1
    bagus gan,, nambah wawasan ane. ane juga mantengin laptop mulu ngurusin web gan,, thanks ilmunya
     
  4. masss94

    masss94 New Member

    Joined:
    Nov 27, 2015
    Messages:
    2
    Likes Received:
    0
    Trophy Points:
    1
    nice tips FlinkSky, info yang sangat bermanfaat
     
  5. tonbad

    tonbad Member

    Joined:
    Dec 21, 2014
    Messages:
    260
    Likes Received:
    24
    Trophy Points:
    18
    Google+:
    patut dicoba nih.. thanks untuk tipsnya.. :)
     
  6. anton_sudibyo

    anton_sudibyo Member

    Joined:
    Dec 23, 2015
    Messages:
    459
    Likes Received:
    35
    Trophy Points:
    28
    Ada yang lebih efisien, terutama kalau cuma butuh sekedar insert saja, tidak butuh ID data yg diinsert, yaitu dengan 1x query

    Code:
    INSERT INTO
    nama_tabel
       (col1, col2)
    VALUES
       ('val1', 'val2'),
       ('val3', 'val4'),
       ('val5', 'val6')
    PHP:
    <?php
        $array 
    = array(    '1'    =>'syahrini',
                
    '2'    =>'duo sergiala',
                
    '3'    => 'kumar',
                
    '4'    => 'pak Zanni'
                
    );

        
    $conn mysql_connect('db_user''db_password' );
        
    mysql_select_db'mhs_db'$conn )

        
    $insert = array();

        foreach( 
    $array as $key=>$value ) {
            
    $insert[] = "('$key', '$value')";
        }

        if (array() != 
    $insert) {
            
    $sql "INSERT INTO mahasiswa ( nim, nama_mhs) VALUES ".implode(", "$insert);
            
    mysql_query$sql$conn );
        }
    ?>
     
  7. aa online

    aa online Member

    Joined:
    Oct 10, 2015
    Messages:
    604
    Likes Received:
    48
    Trophy Points:
    28
    Google+:
Loading...

Share This Page