下午好。这样的问题。想要使用表导入Excel文件,然后编辑或保存到数据库。进入控制器"导入" 为空。
array(1) { ["document"]=> string(0) "" }
只是不起作用验证。
模型文件
class DocumentForm extends CFormModel {
public $document;
public function rules() {
return array(
array('document', 'required'),
array('document','file','types'=>'xls,xlsx'),
);
}
public function attributeLabels() {
return array(
'document' => 'Документ',
);
}
}
控制器(索引)
$docModel=new DocumentForm;$this->render('index',array('docModel'=>$docModel));
表示(索引)
echo CHtml::form('','POST',array('enctype'=>'multipart/form-data'));
echo CHtml::activeFileField($docModel, 'document');
echo CHtml::button('Импорт', array('submit' => array('import')));
echo CHtml::endForm();
查看以编辑表格(导入)
if(isset($_POST['DocumentForm'])) {
$docModel->attributes = $_POST['DocumentForm'];
$docModel->document = CUploadedFile::getInstance($docModel,'document');
$objPHPExcel = PHPExcel_IOFactory::load($documentModel->document->tempName);
// ...
}
答案 0 :(得分:2)
尝试使用它:
$objPHPExcel = PHPExcel_IOFactory::load($_FILES['DocumentForm']['tmp_name']['document']);
$objWorksheet = $objPHPExcel->getActiveSheet();