ThinkPHP图片上传实例

jerry thinkphp 2015年11月19日 收藏
ThinkPHP3.1.3图片上传实例
1、将上传和缩略图处理扩展放在TP核心中,直接覆盖压缩包中的ThinkPHP即可
2、下载jquery.uploadify插件 即文件包中的Public/uploadimg/js/uploadify-v3.1/
3、在上传页面模板引入js和css
  1. <link rel="stylesheet" type="text/css" href="__PUBLIC__/uploadimg/js/uploadify-v3.1/uploadify.css" media="all">
  2. <script type="text/javascript" src="__PUBLIC__/uploadimg/js/uploadify-v3.1/jquery.uploadify-3.1.min.js"></script>
当然也必须引入:jquery库文件
4、在上传页面模板
  1. <script type="text/javascript">
  2. $(function() {
  3.     $('#file_upload').uploadify({
  4.         'swf'      : '__PUBLIC__/uploadimg/js/uploadify-v3.1/uploadify.swf',
  5.         'uploader' : '{:U("Student/uploadify")}',
  6.         'buttonText' : '上传头像',
  7.         'onUploadSuccess' : function(file, data, response) {
  8.             $('#image').attr('src','/Uploads/images/130_'+data);
  9.             $('#pic').val(data);
  10.         },
  11.     });
  12.  });
  13.  </script>
5、上传表单:
  1. <div class="unit">
  2. <label>照片:</label>
  3. <img id="image" src="__PUBLIC__/uploadimg/js/mystery.png" width="130" height="130" border="0" />
  4. <input id="file_upload" name="file_upload" type="file" multiple="true" value="" />
  5. <input id="pic" name="photo" type="hidden" />
  6. </div>
6、上传函数:
  1. public function uploadify(){
  2.     if (!empty($_FILES)) {
  3.         import("ORG.NET.UploadFile");
  4.         $upload = new UploadFile();
  5.         $upload->maxSize = 2048000;
  6.         $upload->allowExts = array('jpg','jpeg','gif','png');
  7.         $upload->savePath = "./Uploads/images/";
  8.         $upload->thumb = true; //设置缩略图
  9.         $upload->imageClassPath = "ORG.Util.Image";
  10.         $upload->thumbPrefix = "130_,75_"; //生成多张缩略图
  11.         $upload->thumbMaxWidth = "130,75";
  12.         $upload->thumbMaxHeight = "130,75";
  13.         $upload->saveRule = uniqid; //上传规则
  14.         $upload->thumbRemoveOrigin = true; //删除原图
  15.         if(!$upload->upload()){
  16.             $this->error($upload->getErrorMsg());//获取失败信息
  17.         } else {
  18.             $info = $upload->getUploadFileInfo();//获取成功信息
  19.         }
  20.         echo $info[0]['savename'];    //返回文件名给JS作回调用
  21.     }
  22.  }

附件thinkphp上传图片示例.zip ( 61.73 KB 下载:788 次 )