主页 > 知识库 > PHP结合jquery ajax实现上传多张图片,并限制图片大小操作示例

PHP结合jquery ajax实现上传多张图片,并限制图片大小操作示例

热门标签:电梯外呼线路板维修视频 安阳自动外呼系统价格是多少 浙江外呼电话系统软件 地图标注风向标 十堰ai电话机器人效果怎么样 临沂智能电销机器人软件 上海公司外呼系统线路 芒果电销机器人 银川ai电话机器人

本文实例讲述了PHP结合jquery ajax实现上传多张图片,并限制图片大小操作。分享给大家供大家参考,具体如下:

php用jquery-ajax上传多张图片限制图片大小

/**
 * 上传图片,默认大小限制为3M
 * @param String $fileInputName
 * @param number $size
 */
public function processUpload($fileInputName,$size=3145728)
{
  $result = array('status'=>0, 'errcode'=>null, 'group'=>'', 'path'=>'', 'site'=>'', 'size'=>0);
  $file = $_FILES[$fileInputName];
  //用filesize函数获取文件大小,filesize这个内置函数不能直接放$fileInputName或者$file['name'],要用$file['tmp_name'],或者直接用$file['size']
  $bytes = $file['size'];
  if($bytes==0 || $bytes > $size){
    $result['status'] = -1;
    $result['size'] = $bytes;
    return $result;
  }
  $fileMIME = $file['type'];
  $originFilename = $file['name'];
  $tmpFileDir = C('FILE_UPLOAD_SWAP_DIR');
  $fileName = CommonUtil::generateUUid();
  switch ($fileMIME)
  {
    case 'image/jpeg': //jpeg jpg jpe
      $tmpFile = $tmpFileDir.$fileName.'.jpg';
      break;
    case 'application/x-jpg':
      $tmpFile = $tmpFileDir.$fileName.'.jpg';
      break;
    default:
      $result['status'] = 1;
      $result['group'] = $tmpFileDir.$fileName;
      $result['site'] = $fileMIME;
      return $result;
  }
  //......
}

上图是打印出来的$file属性

下面是控制器代码

/**
 * 上传多张图片公共方法
 * fileName 为input的name属性
 */
public function doUploadJpgMultiple()
{
  $filename = I('get.fileName','');
  $uploader = new UploadJpgUtil();
  $result = $uploader->processUpload($filename);
  echo json_encode($result);
}

下面是ajax代码

//一个页面上传多张图片
function ajaxUploadMultiple(j) {
  $.ajaxFileUpload({
    url : base_url+"/UploadImgUtil/doUploadJpgMultiple?fileName=fileToUpload"+ j,
    secureuri : false,
    fileElementId : "fileToUpload"+ j,// file控件id
    type: "POST",
    dataType: 'json',
    success : function(data, status) {
      if (typeof (data.status) != 'undefined') {
        if (data.status == -1) {
          alert('上传图片不能超过规定大小');
        }else if (data.status == 1) {
          alert('上传图片不是JPG格式');
        }else if (data.status != 0) {
          alert('status='+data.status + ' errcode=' + data.errcode);
        }
        else {
          var fileUrl = 'http://' + data.site + '/' + data.group
            + '/' + data.path;
          $('#flatImgthumb'+ j).attr('src', fileUrl);
          $('#hidFlatImgthumb'+ j).val(data.group + '/' + data.path);
        }
      }
    },
    error : function(data, status, e) {
      alert(e);
    }
  });
  return false;
}

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP+ajax技巧与应用小结》、《php文件操作总结》、《PHP图形与图片操作技巧汇总》、《PHP网络编程技巧总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

您可能感兴趣的文章:
  • 基于Spring Boot利用 ajax实现上传图片功能
  • JavaScript实现图片上传并预览并提交ajax
  • jquery+ajax实现上传图片并显示上传进度功能【附php后台接收】
  • thinkPHP利用ajax异步上传图片并显示、删除的示例
  • Ajax实现图片上传并预览功能
  • ajax实现上传图片保存到后台并读取的实例
  • php+ajax+h5实现图片上传功能
  • php+ajax实现异步上传文件或图片功能
  • 基于ajax实现上传图片代码示例解析

标签:遵义 吐鲁番 常州 徐州 武威 遂宁 荆门 宁夏

巨人网络通讯声明:本文标题《PHP结合jquery ajax实现上传多张图片,并限制图片大小操作示例》,本文关键词  PHP,结合,jquery,ajax,实现,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《PHP结合jquery ajax实现上传多张图片,并限制图片大小操作示例》相关的同类信息!
  • 本页收集关于PHP结合jquery ajax实现上传多张图片,并限制图片大小操作示例的相关信息资讯供网民参考!
  • 推荐文章