Hallo! Selamat Datang di Marketplace produk digital, Freelancer terbaik di indonesia (68414 Members, 793 Products, 5353 Topic, 13045 Comments)

Cara Membuat Import/Export Data dari Database dalam bentuk Excel di Swarakalibata CI dengan PHPExcel

Dibuat
Login Terakhir 1 Bulan lalu,
Telah Dilihat 1515 Kali
Andaru Abimanyu Mengatakan : Sultan Account
  1. Assalamualaikum Warahmatullahi Wabarakatuh...
  2.  
  3. Saya ingin menanyakan bagaimana Cara Membuat Import/Export Data dari Database dalam bentuk Excel (.xlsx) di Swarakalibata CI dengan PHPExcel atau library yang lain? Misal yang di buat contoh tabel "kategori"
  4.  
  5. Mohon untuk berbagi ilmunya. Terimakasih..

Ada 4 Jawaban

Bukhori Muslim
commented on 09 Des 2019 09:26:55
Salah satu jawaban terbaik,..
  1. Assalamualaikum,.. saja jelaskan tahapannya :
  2. Extraxt file libraries.zip yang saya lampirkan dibawah ini pada : application/libraries
  3.  
  4. // Buat Views form html untuk import file excel :
  5. // application/views/administrator/mod_kategori/view_kategori.php
  6.  
  7. <form action='' method='POST' enctype='multipart/form-data'>
  8. <input type="file" name='fileexcel'>
  9. <input type="submit" name='tambahkan' class='btn btn-info btn-sm' value='Import'>
  10. </form>
  11.  
  12. // Selanjutnya Controllers, bisa tempatkan pada Administrator.php
  13. public function __construct(){
  14. parent::__construct();
  15. $this->load->library("PHPExcel");
  16. }
  17.  
  18. public function import_excel(){
  19. $config['upload_path'] = 'asset/files';
  20. $config['allowed_types'] = 'xlsx|xls';
  21. $this->load->library('upload', $config);
  22. if ( ! $this->upload->do_upload('fileexcel')){
  23. $error = array('error' => $this->upload->display_errors());
  24. }else{
  25. $data = array('upload_data' => $this->upload->data());
  26. $upload_data = $this->upload->data(); //Mengambil detail data yang di upload
  27. $filename = $upload_data['file_name'];//Nama File
  28. $this->model_app->import_excel('files',$filename);
  29. }
  30. }
  31.  
  32. // Terakhir buat Models bisa ditempatkan pada : application/models/model_app.php
  33. public function import_excel($directory,$filename){
  34. ini_set('memory_limit', '-1');
  35. $inputFileName = './asset/'.$directory.'/'.$filename;
  36. try {
  37. $objPHPExcel = PHPExcel_IOFactory::load($inputFileName);
  38. } catch(Exception $e) {
  39. die('Error loading file :' . $e->getMessage());
  40. }
  41.  
  42. $worksheet = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
  43. $numRows = count($worksheet);
  44. for ($i=2; $i < ($numRows+1) ; $i++) {
  45. $data1 = $worksheet[$i]['A'];
  46. $data2 = $worksheet[$i]['B'];
  47. $data3 = $worksheet[$i]['C'];
  48. $data4 = $worksheet[$i]['D'];
  49. $data5 = $worksheet[$i]['E'];
  50. $data6 = $worksheet[$i]['F'];
  51. $data7 = $worksheet[$i]['G'];
  52. $ins = array(
  53. "id_kategori" =>$data1,
  54. "nama_kategori" =>$data2,
  55. "username" =>$data3,
  56. "kategori_seo" =>$data4,
  57. "katif" =>$data5,
  58. "sidebar" =>$data6,
  59. "gambar_utama" =>$data7);
  60. $this->db->insert('kategori', $ins);
  61. }
  62. }
  63.  
  64. Oke beres, selanjutnya coba IMPORT file excelnya.
  65. Semoga berhasil.
Terdapat 2 File dilampirkan :
1. libraries.zip (925 KB)
2. format_import_kategori_xls.zip (6 KB)
Andaru Abimanyu
commented on 09 Des 2019 19:27:52
  1. Assalamualaikum,..
  2. Terimakasih banyak Pak Bukhori, sudah saya coba dan alhamdulillah bisa :)
  3. Satu lagi, biar lengkap sekalian, hehe...
  4. Untuk yang fitur export dari database nya bagaimana ya pak, nanti file output/exportnya dalam bentuk xlsx/xls (sama seperti file format import), terus apabila id_kategorinya sama otomatis hanya inputan dari field dengan id_kategori terbaru yang masuk terupdate, kalau boleh mungkin sekalian bisa melakukan update detail data melalui export/import, hehe
  5. Terimakasih banya sebelumnya...
Bukhori Muslim
commented on 10 Des 2019 06:46:21
Salah satu jawaban terbaik,..
  1. Assalamualaikum,.. untuk export excel sebaiknya pake ini saja gan lebih gampang :
  2. <html>
  3. <head>
  4. <title>Export Data Kategori</title>
  5. </head>
  6. <body>
  7. <?php
  8. header("Content-type: application/vnd-ms-excel");
  9. header("Content-Disposition: attachment; filename=kategori.xls");
  10. echo "<table border="1">
  11. <tr>
  12. <th style='width:20px'>Id Kategori</th>
  13. <th>Nama Kategori</th>
  14. <th>Username</th>
  15. <th>Kategori Seo</th>
  16. <th>Aktif</th>
  17. <th>Sidebar</th>
  18. <th>Gambar Utama</th>
  19. </tr>";
  20. $record = $this->db->query("SELECT * FROM kategori");
  21. foreach ($record->result_array() as $row){
  22. echo "<tr><td>$row[id_kategori]</td>
  23. <td>$row[nama_kategori]</td>
  24. <td>$row[username]</td>
  25. <td>$row[kategori_seo]</td>
  26. <td>$row[aktif]</td>
  27. <td>$row[sidebar]</td>
  28. <td>$row[gambar_utama]</td>
  29. </tr>";
  30. }
  31. echo "</table>";
  32. ?>
  33. </body>
  34. </html>
Andaru Abimanyu
commented on 11 Des 2019 14:49:52
  1. Assalamualaikum,..
  2. Terimakasih pak, untuk export sudah berhasil. Kalau menambahkan tanda petik atas (') untuk output angka hasil export di salah satu field bagaimana ya pak, jadi contohnya nanti begini '0007 angka nol depan tetap terbaca
Maaf, Untuk Memberikan Komentar Anda Harus Login !!!

Online