- Beranda
- Programmer Forum
Import data Excel ke Mysql via codeigniter
...
TS
gadoela
Import data Excel ke Mysql via codeigniter
[WTA] Misi gan, ane mau tanya nih tentang codeigniter. Ane lagi coba mengimport dari data Excel ke ke Mysql dengan menggunakan Codeigniter gan,tapi kok selalu gagal ya gan. Maklum newbie gan.
Database nya :
Form View nya :
Controller nya :
Modelnya :
mohon pencerahannya gan
Database nya :
Code:
CREATE TABLE IF NOT EXISTS `nsb` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`norek` varchar(25) NOT NULL,
`nama` varchar(25) NOT NULL,
`alamat` varchar(40),
`ket` varchar(300),
PRIMARY KEY (`id`),
UNIQUE KEY `norek` (`norek`)
)
Form View nya :
Code:
<div class="container-fluid">
<div class="row">
<div class="col-sm-12">
<h1 class="title1">Import</h1>
<?php
echo $this->upload->display_errors("<div class='help-block error1'>", "</div>");
$ifile = array(
'name' => 'userfile',
'id' => 'userfile'
);
echo form_open_multipart('', array('role' => 'form'));
echo "<div class='form-group'>" . form_label('File (xls) : ', 'userfile') . form_upload($ifile) . "</div>";
echo form_submit('ok', 'Import', 'class="btn btn-info"');
echo form_close();
?>
</div>
</div>
</div>
Controller nya :
Code:
<?php
class Import extends CI_Controller
{
public function __construct()
{
parent::__construct();
$this->load->model('mdb');
}
public function index()
{
$this->load->library('upload');
if ($this->input->post('ok')) {
$config['upload_path'] = './assets/upload/';
$config['allowed_types'] = 'xls|xlsx';
$config['max_size'] = 5120;
$this->upload->initialize($config);
if ($this->upload->do_upload() == true) {
$file = $this->upload->data();
$srcdata = './assets/upload/' . $file['file_name'];
$this->load->library('excel');
try {
$inputFileType = PHPExcel_IOFactory::identify($srcdata);
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($srcdata);
} catch (Exception $e) {
die("Error loading file : " . $e->getMessage());
}
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow();
$highestColumn = $sheet->getHighestColumn();
for ($row = 2; $row <= $highestRow; $row++) {
$rowData = $sheet->rangeToArray('A' . $row . ':' . $highestColumn . $row, null, true, false);
foreach ($rowData as $rdata){
$norek = $rdata [0];
$nama = $rdata[1];
$alamat = $rdata [2];
$ket = $rdata [3];
}
$this->mdb->nsb_add($norek, $nama, $alamat, $ket);
}
set_message('msg', 'success', 'Anda berhasil mengimport data.');
redirect('import');
//Hapus file yang diimport
unlink($srcdata);
}
}
$this->load->view('ui/atas');
$this->load->view('ui/navigasi');
$this->load->view('ui/import');
$this->load->view('ui/bawah');
}
}
Modelnya :
Code:
public function nsb_add($norek, $nama, $alamat, $ket)
{
return $this->db->insert('nsb', array('norek' => $norek, 'nama' => $nama, 'alamat' => $alamat, 'ket'=> $ket));
}
mohon pencerahannya gan
nona212 memberi reputasi
1
1.7K
0
Tulis komentar menarik atau mention replykgpt untuk ngobrol seru
Mari bergabung, dapatkan informasi dan teman baru!
Programmer Forum
20.2KThread•4.3KAnggota
Tulis komentar menarik atau mention replykgpt untuk ngobrol seru