Shi*_*ubi 6 php xls codeigniter file-upload phpexcel
我当前的CI项目现在处理文件.我想上传一个xls | xlsx文件到服务器,然后将excel文件数据导入Database表.
作为第一部分,上传的文件成功,我将文件上传到相同级别的应用程序,系统,资产中的uploads文件夹.现在我想加载这个文件并将这些内容导入到DB.我正在使用PHPExcel来执行此操作
这是我的控制器
$this->load->library('phpexcel');
$this->load->library('PHPExcel/iofactory');
$objPHPExcel = new PHPExcel();
$objReader= IOFactory::createReader('Excel2007');
$objReader->setReadDataOnly(true);
$objPHPExcel=$objReader->load(BASE_URL().'uploads/Data_Report.xls');
$objWorksheet=$objPHPExcel->setActiveSheetIndex(0);
$this->load->model('datas_model');
for($i=2;$i<=77;$i++) {
$client_name= $objWorksheet->getCellByColumnAndRow(0,$i)->getValue();
$client_address= $objWorksheet->getCellByColumnAndRow(1,$i)->getValue();
$data_inp=array('name'=>$client_name, 'address'=>$client_address);
$this->datas_model->add_data($data_inp);
}
Run Code Online (Sandbox Code Playgroud)
这是我的观点
<?php echo form_open_multipart('../settings_controller/upload_data/do_upload');?>
<div class="custom-file-upload">
<input type="file" id="file" name="userfile" multiple/>
</div>
<div class="button-container-2">
<button class="btn btn-primary" id="updown-btn" type="submit" style="height:45px;">Upload </button>
</div>
<?php echo "</form>"?>
Run Code Online (Sandbox Code Playgroud)
当我跑步时,它显示我的错误 Uncaught exception 'PHPExcel_Reader_Exception' with message 'Could not open http://localhost/myproject/uploads/Data_Report.xls for reading! File does not exist.'
当我把那个Data_Report.xls文件放在htdocs中时,它可以成功运行.
问题是当我使用BASE_URL().'uploads/Data_Report.xls'时.但该文件在实际存在,我通过粘贴url上的localhost/myproject/uploads/Data_Report.xls进行验证,并成功下载.
任何帮助将不胜感激 .
我不确定是否是这种情况,但您应该尝试添加文件系统中的绝对路径而不是 url 的路径。
喜欢:
/var/www/YourProject/public/uploads/Data_Report.xls
Run Code Online (Sandbox Code Playgroud)
并不是
yourUrl.com/uploads/Data_Report.xls
Run Code Online (Sandbox Code Playgroud)
如何使用 codeigniter 获取绝对路径(无需硬编码!),您可以使用:
FCPATH -> '/'
BASEPATH -> '/system/'
APPPATH -> '/application/'
Run Code Online (Sandbox Code Playgroud)
所以我不记得 codeigniter 的结构,但我从谷歌得到了这个,所以做这样的事情:
APPPATH.'public/uploads/what_ever.xls';
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10097 次 |
| 最近记录: |