Php 从输入表单字段读取数据并将其存储到yii2中的excel中
我使用PHPExcel制作了一个电子表格。电子表格正在填充,但其中的值已损坏。此外,我获取输入字段值的方法是通过serialise()据我所知,它返回一个字符串。基本要点是如何将这些不同的输入字段值存储到我的excel文件中。如果我的逻辑有问题,请告诉我。 提前感谢:) 控制器动作-Php 从输入表单字段读取数据并将其存储到yii2中的excel中,php,yii2,phpexcel,yii2-basic-app,Php,Yii2,Phpexcel,Yii2 Basic App,我使用PHPExcel制作了一个电子表格。电子表格正在填充,但其中的值已损坏。此外,我获取输入字段值的方法是通过serialise()据我所知,它返回一个字符串。基本要点是如何将这些不同的输入字段值存储到我的excel文件中。如果我的逻辑有问题,请告诉我。 提前感谢:) 控制器动作- public function actionSaveExcel() { $test = $_POST; print_r($test); $objPHPExcel = new \PHPExcel()
public function actionSaveExcel() {
$test = $_POST;
print_r($test);
$objPHPExcel = new \PHPExcel();
$sheet = 0;
$objPHPExcel->setActiveSheetIndex($sheet);
$foos = [
['firstname' => $test['list_box_element'],
'lastname' => 'pat'],
];
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20);
$objPHPExcel->getActiveSheet()->setTitle('xxx')
->setCellValue('A1', 'Firstname')
->setCellValue('B1', 'Lastname');
$row = 2;
foreach ($foos as $foo) {
$objPHPExcel->getActiveSheet()->setCellValue('A' . $row, $foo['firstname']);
$objPHPExcel->getActiveSheet()->setCellValue('B' . $row, $foo['lastname']);
$row++;
}
header('Content-Type: application/vnd.ms-excel');
$filename = "MyExcelReport_" . date("d-m-Y-His") . ".xls";
header('Content-Disposition: attachment;filename=' . $filename . ' ');
header('Cache-Control: max-age=0');
$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
ob_clean();
$objWriter->save('php://output');
return $test['list_box_element'];
// return $objWriter;
}
景色-
clicked = function () {
var joo=$('#orderForm formsection[name="ASSET CODE REPORT"]').find('input,select').serialize();
console.log(joo);
$.ajax({
type: "POST",
data: $('#orderForm formsection[name="ASSET CODE REPORT"]').find('input,select').serialize(),
url: "index.php?r=orders/save-excel",
success: function (data) {
alert(data);
}
});
};
发布您的代码。just dide@Revolution。
$test
中的数据是什么样子的?谢谢大家。找到了解决方案。因此不需要Ajax,我直接将值与url一起传递,它就可以工作了。