Tolong pilih kategori sesuai, jenis posting (diskusi atau bukan) dan sertakan tag/topik yang sesuai seperti komputer, java, php, mysql, dll. Promosi atau posting tidak pada tempatnya akan kami hapus!
- Bagi Anda yang ingin mendaftar, baca link berikut:
http://diskusiweb.com/discussion/50491/how-to-registrasi-diskusiweb-com-baca-ini-terlebih-dahulu
- Cara menyisipkan kode program supaya tampil rapi dan terformat dengan baik di diskusiweb.com: http://www.diskusiweb.com/discussion/50415/cara-menyisipkan-kode-program-di-diskusiweb-com
- Cara posting gambar/image di post Anda: http://www.diskusiweb.com/discussion/47345/cara-menyisipkan-menyertakan-image-pada-posting/p1

import excell ke database : Column count doesn't match value count at row 1

ketika sy buat scrip seperti ini untu import data dari excell ke database, kok ada tulisa gini (Column count doesn't match value count at row 1),stlh sy cek antar colum didata excell dan di databse sama
<html>
<head>
<title>Upload page</title>
</head>
<body>
<?php
//KONEKSI..
$host='localhost';
$username='coba';
$password='ss';
$database='targetugt';
mysql_connect($host,$username,$password);
mysql_select_db($database);

if (isset($_POST['submit'])) {//Script akan berjalan jika di tekan tombol submit..

//Script Upload File..
if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
echo "<h1>" . "File ". $_FILES['filename']['name'] ." Berhasil di Upload" . "</h1>";
echo "<h2>Menampilkan Hasil Upload:</h2>";
readfile($_FILES['filename']['tmp_name']);
}

//Import uploaded file to Database, Letakan dibawah sini..
$handle = fopen($_FILES['filename']['tmp_name'], "r"); //Membuka file dan membacanya
while (($data = fgetcsv($handle, 1000000, ",")) !== FALSE) {
$import="insert into target(id,tahun,kodecabang,kodeTarget,Namaatarget,target01,target02,target03,target04,target05,target06,target07,target08,target09,target10,target11,target12)values(NULL,'$data[0]','$data[1]')"; //data array sesuaikan dengan jumlah kolom pada CSV anda mulai dari “0” bukan “1”
mysql_query($import) or die(mysql_error()); //Melakukan Import
}

fclose($handle); //Menutup CSV file
echo "<br><strong>Import data selesai.</strong>";

}else { //Jika belum menekan tombol submit, form dibawah akan muncul.. ?>

<!-- Form Untuk Upload File CSV-->
Silahkan masukan file csv yang ingin diupload<br />
<form enctype='multipart/form-data' action='' method='post'>
Cari CSV File anda:<br />
<input type='file' name='filename' size='100'>
<input type='submit' name='submit' value='Upload'></form>

<?php } mysql_close(); //Menutup koneksi SQL?>
</body>
</html><br><br><br>
mohon bantuannya ya gan

Comments

  • database yang saya buat seperti ini gan
    CREATE TABLE IF NOT EXISTS `target` (
    `Id` bigint(20) NOT NULL AUTO_INCREMENT,
    `Tahun` int(11) DEFAULT '0',
    `KodeCabang` varchar(5) DEFAULT NULL,
    `KodeTarget` varchar(5) DEFAULT NULL,
    `NamaTarget` varchar(50) DEFAULT NULL,
    `Target01` decimal(16,2) DEFAULT '0.00',
    `Target02` decimal(16,2) DEFAULT '0.00',
    `Target03` decimal(16,2) DEFAULT '0.00',
    `Target04` decimal(16,2) DEFAULT '0.00',
    `Target05` decimal(16,2) DEFAULT '0.00',
    `Target06` decimal(16,2) DEFAULT '0.00',
    `Target07` decimal(16,2) DEFAULT '0.00',
    `Target08` decimal(16,2) DEFAULT '0.00',
    `Target09` decimal(16,2) DEFAULT '0.00',
    `Target10` decimal(16,2) DEFAULT '0.00',
    `Target11` decimal(16,2) DEFAULT '0.00',
    `Target12` decimal(16,2) DEFAULT '0.00',
    PRIMARY KEY (`Id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

    --
  • * sekali ini aja gw jawab, gw baca "gan" lagi, gw abaikan *

    insert into target(

    [1] id,
    [2] tahun,
    [3] kodecabang,
    [4] kodeTarget,
    [5] Namaatarget,
    [6] target01,
    [7] target02,
    [8] target03,
    [9] target04,
    [10] target05,
    [11] target06,
    [12] target07,
    [13] target08,
    [14] target09,
    [15] target10,
    [16] target11,
    [17] target12

    )
    values(

    [1] NULL,
    [2] '$data[0]',
    [3] '$data[1]'

    )

    elo cuma masukin 3 data dgn menulis 17 field ?

    ya ndak heran kalo muncul pesan error nya itu
  • edited March 30
    maaf, sy coba gini tidak bisa, mohon pencerahannay
    <html>
    <head>
    <title>Upload page</title>
    </head>
    <body>
    <?php
    //KONEKSI..
    $host='localhost';
    $username='As';
    $password='aa';
    $database='targetugt';
    mysql_connect($host,$username,$password);
    mysql_select_db($database);

    if (isset($_POST['submit'])) {//Script akan berjalan jika di tekan tombol submit..

    //Script Upload File..
    if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
    echo "<h1>" . "File ". $_FILES['filename']['name'] ." Berhasil di Upload" . "</h1>";
    echo "<h2>Menampilkan Hasil Upload:</h2>";
    readfile($_FILES['filename']['tmp_name']);
    }

    //Import uploaded file to Database, Letakan dibawah sini..
    $handle = fopen($_FILES['filename']['tmp_name'], "r"); //Membuka file dan membacanya
    while (($data = fgetcsv($handle, 1000000, ",")) !== FALSE) {
    $import="insert into target(id,tahun,kodecabang,kodeTarget,Namaatarget,target01,target02,target03,target04,target05,target06,target07,target08,target09,target10,target11,target12)values(NULL,'$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[11]','$data[12]','$data[13]','$data[14]','$data[15]','$data[16]','$data[17]')"; //data array sesuaikan dengan jumlah kolom pada CSV anda mulai dari “0” bukan “1”
    mysql_query($import) or die(mysql_error()); //Melakukan Import
    }

    fclose($handle); //Menutup CSV file
    echo "<br><strong>Import data selesai.</strong>";

    }else { //Jika belum menekan tombol submit, form dibawah akan muncul.. ?>

    <!-- Form Untuk Upload File CSV-->
    Silahkan masukan file csv yang ingin diupload<br />
    <form enctype='multipart/form-data' action='' method='post'>
    Cari CSV File anda:<br />
    <input type='file' name='filename' size='100'>
    <input type='submit' name='submit' value='Upload'></form>

    <?php } mysql_close(); //Menutup koneksi SQL?>
    </body>
    </html><br><br><br>
  • edited March 29
    insert into target(

    [1] id,
    [2] tahun,
    [3] kodecabang,
    [4] kodeTarget,
    [5] Namaatarget,
    [6] target01,
    [7] target02,
    [8] target03,
    [9] target04,
    [10] target05,
    [11] target06,
    [12] target07,
    [13] target08,
    [14] target09,
    [15] target10,
    [16] target11,
    [17] target12

    )
    values(

    [1] NULL,
    [2] '$data[1]',
    [3] '$data[2]',
    [4] '$data[3]',
    [5] '$data[4]',
    [6] '$data[5]',
    [7] '$data[6]',
    [8] '$data[7]',
    [9] '$data[8]',
    [10] '$data[9]',
    [11] '$data[10]',
    [12] '$data[11]',
    [13] '$data[12]',
    [14] '$data[13]',
    [15] '$data[14]',
    [16] '$data[15]',
    [17] '$data[16]',
    [18] '$data[17]'

    )

    18 data mau dimasukin ke 17 field ?
    mbok ya dihitung yg bener


    btw ...

    elo nulis remark ini :
    //data array sesuaikan dengan jumlah kolom pada CSV anda mulai dari “0” bukan “1”

    tapi kayanya ndak elo turutin sendiri
    ...
    NULL,
    '$data[1]',
    '$data[2]',
    ...
  • baik, terima kasih banyak, sy coba lagi
  • edited March 30
    terima kasih banyak gan, smg kebaikan bpk dibalas berlipat ganda, umur dipanjangkan serta diberi rizqi yg banyak halal berkah dn semua keinginannya terkabulkan.Amin
  • edited March 30
    maaf, mengganggu lagi gan, sy coba untuk simpan kedua table yg berbeda dg sy kurangi satu colum dn merubah 2 colum, sy coba gagal kira2 apa penyebabnya ya?, mohon pencerahannya


    <html>
    <head>
    <title>Upload page</title>
    </head>
    <body>
    <?php
    //KONEKSI..
    $host='localhost';
    $username='As';
    $password='ss';
    $database='targetugt';
    mysql_connect($host,$username,$password);
    mysql_select_db($database);

    if (isset($_POST['submit'])) {//Script akan berjalan jika di tekan tombol submit..
    /* 1. cara untuk sukses import adalah Klo mau sukses ganti pengaturan diwindowsnya bahasa indonesaia semua
    2. Lalu simpan filenya dg format csv 2. buka filenya dg notepad lalu lihat tanda pemisahnya jika pakek ; atau yang lain tinggal ganti koma(,) di notepadenya, bila sudah tingga upload */

    //Script Upload File..
    if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
    echo "<h1>" . "File ". $_FILES['filename']['name'] ." Berhasil di Upload" . "</h1>";
    echo "<h2>Menampilkan Hasil Upload:</h2>";
    readfile($_FILES['filename']['tmp_name']);
    }

    //Import uploaded file to Database, Letakan dibawah sini..
    $handle = fopen($_FILES['filename']['tmp_name'], "r"); //Membuka file dan membacanya
    while (($data = fgetcsv($handle, 10000, ",")) !== FALSE) {
    $import="insert into target(id,tahun,kodecabang,kodeTarget,namatarget,target01,target02,target03,target04,target05,target06,target07,target08,target09,target10,target11,target12)values(NULL,'$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[11]','$data[12]','$data[13]','$data[14]','$data[15]','$data[16]')"; //data array sesuaikan dengan jumlah kolom pada CSV anda mulai dari “0” bukan “1”

    mysql_query($import) or die(mysql_error()); //Melakukan Import

    if($import){
    $import1="insert into target_copy(id,tahun,kodecabang,kodeTarget,namatarget,target01,target02,target03,target04,target05,target06,target07,target12,pensil,buku,)values(NULL,'$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[16]','pensil','buku')"; // sedangkan data diexcel columnya seperti ini(id,tahun,kodecabang,kodeTarget,namatarget,target01,target02,target03,target04,target05,target06,target07,target08,target09,target10,target11,target12)//
    mysql_query($import1) or die(mysql_error()); //Melakukan Import ke 2
    }

    fclose($handle); //Menutup CSV file
    echo "<br><strong>Import data selesai.</strong>";

    }else
    {
    //Jika belum menekan tombol submit, form dibawah akan muncul.. ?>

    <!-- Form Untuk Upload File CSV-->
    Silahkan masukan file csv yang ingin diupload<br />
    <form enctype='multipart/form-data' action='' method='post'>
    Cari CSV File anda:<br />
    <input type='file' name='filename' size='100'>
    <input type='submit' name='submit' value='Upload'></form>

    <?php } mysql_close(); //Menutup koneksi SQL?>
    </body>
    </html><br><br><br>
  • edited March 30
    Maaf lagi. Sy itu cari copas dr google trus ada yg tdk faham dg maksud dr fopen dn fgetcsv dlm koding ini $handle=fopen dn $data= fgetcsv yg menjadi bingung kok ditambahi f dn maksud dr get ditambah csv, mohon pencerahannya
  • edited March 30
    Maaf lagi. Sy itu cari copas dr google trus ada yg tdk faham dg maksud dr fopen dn fgetcsv dlm koding ini $handle=fopen dn $data= fgetcsv yg menjadi bingung kok ditambahi f dn maksud dr get ditambah csv, mohon pencerahannya
  • edited March 30
    Maaf, ini contoh yg kami coba gan, mohon pencerahannya

    <html>
    <head>
    <title>Upload page</title>
    </head>
    <body>
    <?php
    //KONEKSI..
    $host='localhost';
    $username='As';
    $password='ss';
    $database='targetugt';
    mysql_connect($host,$username,$password);
    mysql_select_db($database);

    if (isset($_POST['submit'])) {//Script akan berjalan jika di tekan tombol submit..
    /* 1. cara untuk sukses import adalah Klo mau sukses ganti pengaturan diwindowsnya bahasa indonesaia semua
    2. Lalu simpan filenya dg format csv 2. buka filenya dg notepad lalu lihat tanda pemisahnya jika pakek ; atau yang lain tinggal ganti koma(,) di notepadenya, bila sudah tingga upload */

    //Script Upload File..
    if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
    echo "<h1>" . "File ". $_FILES['filename']['name'] ." Berhasil di Upload" . "</h1>";
    echo "<h2>Menampilkan Hasil Upload:</h2>";
    readfile($_FILES['filename']['tmp_name']);
    }

    //Import uploaded file to Database, Letakan dibawah sini..
    $handle = fopen($_FILES['filename']['tmp_name'], "r"); //Membuka file dan membacanya
    while (($data = fgetcsv($handle, 10000, ",")) !== FALSE) {
    $import="insert into target(id,tahun,kodecabang,kodeTarget,namatarget,target01,target02,target03,target04,target05,target06,target07,target08,target09,target10,target11,target12)values(NULL,'$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[11]','$data[12]','$data[13]','$data[14]','$data[15]','$data[16]')"; //data array sesuaikan dengan jumlah kolom pada CSV anda mulai dari “0” bukan “1”

    mysql_query($import) or die(mysql_error()); //Melakukan Import

    if($import){
    $import1="insert into target_copy(id,tahun,kodecabang,kodeTarget,namatarget,target01,target02,target03,target04,target05,target06,target07,target08,pensil,buku,)values(NULL,'$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[11]','pensil','buku')";
    mysql_query($import1) or die(mysql_error()); //Melakukan Import ke 2
    }

    fclose($handle); //Menutup CSV file
    echo "<br><strong>Import data selesai.</strong>";

    }else
    {
    //Jika belum menekan tombol submit, form dibawah akan muncul.. ?>

    <!-- Form Untuk Upload File CSV-->
    Silahkan masukan file csv yang ingin diupload<br />
    <form enctype='multipart/form-data' action='' method='post'>
    Cari CSV File anda:<br />
    <input type='file' name='filename' size='100'>
    <input type='submit' name='submit' value='Upload'></form>

    <?php } mysql_close(); //Menutup koneksi SQL?>
    </body>
    </html><br><br><br>
Sign In or Register to comment.