yii 多文件上传下载
2013-05-21 16:03
288 查看
CUploadedFile实现多文件上传
方法:view视图代码:
for($i=0;$i<3;$i++){
//echo $form->fileField($model,'xiangguan_tupian[]').'<br/>';//这种方法不行
//echo CHtml::activeFileField($model,'xiangguan_tupian[]');//这种也不行
//echo CHtml::fileField('xiangguan_tupian[]','',array('id'=>'xiangguan_tupian'.$i)).' ';//这种也不行
echo CHtml::activeFileField($model,'xiangguan_tupian[]',array('id'=>'xiangguan_tupian'.$i));
}
?>
controller控制器端:
$model=new Info;
// echo '<hr><br>';
$obj_array=CUploadedFIle::getInstances($model,'xiangguan_tupian');//注意这里不是getInstance而是getInstances多了个s,这样得到的是一个包含CUploadedFile对象的数组
//print_r($obj_array);
foreach($obj_array as $k=>$v){
$v->saveAs(Yii::app()->basePath.'/'.$k.'_test.'.$v->getExtensionName());
}
多文件上传处理完毕。
要点:CUploadedFile::getInstance(); // 返回的是一个CUploadedFile对象,
CUploadeFile::getInstanceByName(); //返回的是一个CUploadedFile对象
CUploadedFile::getInstances() //返回的是一个值为CUploadedFile对象的数组
CUploadedFile::getInstancesByName(); //返回的是一个值为CUploadedFile对象的数组
3.使用sendFile()来下载文件
$type = LFilter::checkString($_GET['t']);
$dataProvider = Book::model()->findByPk($id);
$content = $this->renderPartial('book',array(
'dataProvider' => $dataProvider,
'type' => $type,
),true,false);
Yii::app()->request->sendFile($dataProvider->name.'.'.$type,$content);
}
方法:view视图代码:
for($i=0;$i<3;$i++){
//echo $form->fileField($model,'xiangguan_tupian[]').'<br/>';//这种方法不行
//echo CHtml::activeFileField($model,'xiangguan_tupian[]');//这种也不行
//echo CHtml::fileField('xiangguan_tupian[]','',array('id'=>'xiangguan_tupian'.$i)).' ';//这种也不行
echo CHtml::activeFileField($model,'xiangguan_tupian[]',array('id'=>'xiangguan_tupian'.$i));
}
?>
controller控制器端:
$model=new Info;
// echo '<hr><br>';
$obj_array=CUploadedFIle::getInstances($model,'xiangguan_tupian');//注意这里不是getInstance而是getInstances多了个s,这样得到的是一个包含CUploadedFile对象的数组
//print_r($obj_array);
foreach($obj_array as $k=>$v){
$v->saveAs(Yii::app()->basePath.'/'.$k.'_test.'.$v->getExtensionName());
}
多文件上传处理完毕。
要点:CUploadedFile::getInstance(); // 返回的是一个CUploadedFile对象,
CUploadeFile::getInstanceByName(); //返回的是一个CUploadedFile对象
CUploadedFile::getInstances() //返回的是一个值为CUploadedFile对象的数组
CUploadedFile::getInstancesByName(); //返回的是一个值为CUploadedFile对象的数组
3.使用sendFile()来下载文件
$type = LFilter::checkString($_GET['t']);
$dataProvider = Book::model()->findByPk($id);
$content = $this->renderPartial('book',array(
'dataProvider' => $dataProvider,
'type' => $type,
),true,false);
Yii::app()->request->sendFile($dataProvider->name.'.'.$type,$content);
}
相关文章推荐
- YII实现文件上传下载
- ASP.NET中常用的文件上传下载方法
- Spring Boot + thymeleaf 实现文件上传下载功能
- java中利用commons-net上传下载文件
- java上传、下载、删除ftp文件
- linux下如何使用sftp命令进行文件上传和下载
- ASP.NET 实现文件图片上传下载处理
- 文件上传与下载
- AppCan的图片、文件操作、上传、下载操作 From Ken
- SpringMVC 实现POI读取Excle文件中数据导入数据库(上传)、导出数据库中数据到Excle文件中(下载)
- Java 文件上传和下载组件的设计与实现...【Pnoter】
- 【php】文件的上传与下载
- [转]JSP或servlet中(以及上传下载文件)中文乱码或不显示的解决方案
- Struts2-14 文件的上传与下载
- FTP下载和上传文件的java实现
- smartupload.jar 实现文件上传下载
- Struts2总结---文件上传(单文件/多文件)、下载 (13)
- webservice 上传下载 大文件
- java web 文件上传与下载
- Spring MVC 文件上传与下载