ajaxfileuploader php,AjaxFileUploader+thinkphp实现无刷新文件上传的示例代码

AjaxFileUploader+thinkphp实现无刷新文件上传的示例代码

分类:PHP_Python| 发布:kuabaobao| 查看: | 发表时间:2015/6/2

首先,AjaxFileUploader插件是一个基于jquery的插件,我们可以使用AjaxFileUploader插件来实现文件异步上传功能了,使用这款插件上传文件不要担心兼容性的问题,它的兼容性可以说兼容所有主流浏览器,下面来给大家介绍一个AjaxFileUploader+thinkphp实现文件上传的实例。

ThinkPHP框架下用AjaxFileUploader插件实现ajax文件上传,支持多种文件格式,页面无刷新上传。

在Lib/Action/目录下创建upAction.class.php文件,代码如下:

代码如下:<?php

class upAction extends BaseAction{

public function index(){

$this->display();

}

/*

*@文件上传

*@author    FineYi

*@date        2013-01-23

*/

public function upLoadFile(){

$error = "";

$msg = "";

$fileElementName = 'fileToUpload';

if(!empty($_FILES[$fileElementName]['error'])){

switch($_FILES[$fileElementName]['error']){

case '1':

$error = 'The uploaded file exceeds the upload_max_filesize directive in php.ini';

break;

case '2':

$error = 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form';

break;

case '3':

$error = 'The uploaded file was only partially uploaded';

break;

case '4':

$error = 'No file was uploaded.';

break;

case '6':

$error = 'Missing a temporary folder';

break;

case '7':

$error = 'Failed to write file to disk';

break;

case '8':

$error = 'File upload stopped by extension';

break;

case '999':

default:

$error = 'No error code avaiable';

}

}elseif(empty($_FILES['fileToUpload']['tmp_name']) || $_FILES['fileToUpload']['tmp_name'] == 'none'){

$error = 'No file was uploaded..';

}else{

$re = $this->up();

if(!$re){

$error = 'Up file fail';

}

$msg = $re['savename'];    //文件名

$path = '/upload/bizcoop/'.$msg;    //文件路径

$size = $re['size'];    //文件大小

}

echo json_encode(array('error'=>$error,'msg'=>$msg,'path'=>$path,'size'=>$size));exit;

}

private function up(){

import('@.Org.UploadFile');//将上传类UploadFile.class.php拷到Lib/Org文件夹下

$upload=new UploadFile();

$upload->maxSize='-1';//默认为-1,不限制上传大小

$upload->savePath= ICTSPACE_DIST_ROOT_PATH.'/www/upload/bizcoop/';//保存路径

$upload->saveRule=uniqid;//上传文件的文件名保存规则

$upload->uploadReplace=true;//如果存在同名文件是否进行覆盖

$upload->allowExts=array('jpg','jpeg','png','gif');//准许上传的文件类型

if($upload->upload()){

$info=$upload->getUploadFileInfo();

return $info[0];

}else{

return false;

exit;

}

}

}

?>

在/Tpl/default/Up/目录下创建index.tpl文件,代码如下:

代码如下:

Ajax File Upload Demo

Upload
已上传的附件:

在/Lib/Org/目录下放入ThinkPHP文件上传类就可以了,有一些插件我们需要到官方下载。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值