6 คำตอบ
สอบถามเกี่ยวกับ Yii2 CSV Importer to Database ตัวอย่างไหมครับ
ลองวิธีนี้ครับ
http://stackoverflow.com/questions/30592784/importing-data-from-xls-csv-to-mysql-using-yii-2-0-framework
ได้แล้วครับ ขอบคุณครับ....

import CSV พร้อมกับ ป้อนข้อมูลลง inputtext ใน table เดียวกันได้ไหมครับ
![url]](%5Burl=http%3A//picture.in.th/id/c1bd70c2852145f935f4f2082c637aa2%5D%5Bimg%5Dhttp://image.free.in.th/v/2013/iz/151009034820.png%5B/img%5D%5B/url%5D)
ใช้วิธีตั้งชื่อไฟล์แทนได้ไหมครับ เช่น 2015-03-data.xls ประมาณนี้ครับ
//upload controllers
public function actionUpload() {
$model = new CsvForm();
if ($model->load(Yii::$app->request->post())) {
$file = UploadedFile::getInstance($model, 'file');
$filename = 'Data.' . $file->extension;
$upload = $file->saveAs('uploads/' . $filename);
if ($upload) {
define('CSV_PATH', 'uploads/');
$csv_file = CSV_PATH . $filename;
$filecsv = file($csv_file);
print_r($filecsv);
foreach ($filecsv as $data) {
$modelnew = new Tblimport;
$hasil = explode(",", $data);
$nim = $hasil[0];
$nama = $hasil[1];
$jurusan = $hasil[2];
$angkatan = $hasil[3];
$alamat = $hasil[4];
$foto = $hasil[5];
$month = $hasil[6];
$year = $hasil[7];
$modelnew->nim = $nim;
$modelnew->nama = $nama;
$modelnew->jurusan = $jurusan;
$modelnew->angkatan = $angkatan;
$modelnew->alamat = $alamat;
$modelnew->foto = $foto;
$modelnew->month = $month;
$modelnew->year = $year;
$modelnew->save();
}
unlink('uploads/' . $filename);
return $this->redirect(['index']);
}
} else {
return $this->render('upload', ['model' => $model]);
}
}
///============= view
<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
?>
<?php $form = ActiveForm::begin(['options' => ['enctype'=>'multipart/form-data']]); ?>
<div>
<?= $form->field($model,'month')->textInput() ?>
</div>
<div>
<?= $form->field($model,'year')->textInput() ?>
</div>
<div>
<?= $form->field($model,'file')->fileInput() ?>
</div>
<div>
<?= Html::submitButton('อัฟโลหดไฟล์ CSV...',['class'=>'btn btn-primary']) ?>
</div>
<?php ActiveForm::end(); ?>
ประมาณนี้ครับ