ThinkPHP文件上传
FileAction.class.php
- <?php
- class FileAction extends Action{
- function index(){
- $file=M('file');
- $list=$file->select();
- $this->assign('filelist',$list);
- $this->display();
- }
-
- function upload(){
-
- if(emptyempty($_FILES)){
- $this->error('必须选择上传文件');
- }else{
- $a=$this->up();
- if(isset($a)){
-
- if($this->c($a)){
- $this->success('上传成功');
- }
- else{
- $this->error('写入数据库失败');
- }
- }else{
- $this-error('上传文件异常,请与系统管理员联系');
- }
- }
- }
-
- private function c($data){
- $file=M('file');
- $num = '0';
- for($i = 0; $i < count($data)-1; $i++) {
- $data['filename']=$data[$i]['savename'];
- if( $file->data($data)->add())
- {
- $num++;
- }
- }
- if($num==count($data)-1)
- {
- return true;
- }else
- {
- return false;
- }
-
- }
-
- private function up(){
-
- import('@.Org.UploadFile');
- $upload=new UploadFile();
- $upload->maxSize='1000000';
- $upload->savePath='./Public/Upload/';
- $upload->saveRule=uniqid;
- $upload->uploadReplace=true;
- $upload->allowExts=array('jpg','jpeg','png','gif');
- $upload->allowTypes=array('image/png','image/jpg','image/jpeg','image/gif');
- $upload->thumb=true;
- $upload->thumbMaxWidth='300,500';
- $upload->thumbMaxHeight='200,400';
- $upload->thumbPrefix='s_,m_';
- $upload->thumbRemoveOrigin=1;
-
- if($upload->upload()){
- $info=$upload->getUploadFileInfo();
- return $info;
- }else{
- $this->error($upload->getErrorMsg());
- }
- }
-
- }
- ?>
模板文件index.html
- <html>
-
- <body>
-
- <volist name="filelist" id="vo">
- 小图:<img src="__PUBLIC__/upload/s_{$vo['filename']}" /><br />
- 大图:<img src="__PUBLIC__/upload/m_{$vo['filename']}" /><br />
- </volist>
-
- <form action="__URL__/upload" method="post" enctype="multipart/form-data">
- <input type="file" name="file[]" /><br />
- <input type="file" name="file[]" /><br />
- <input type="file" name="file[]" /><br />
- <input type="submit" value="上传" />
- </form>
-
- </body>
- </html>
|