php+ajax文件上传
php+ajax文件上传
html:
<input id="user_real_name" class="input_show" type="text" value="" placeholder="姓名"> <input id="file1" class="ufile" type="file" name="file1" accept="image/gif,image/jpeg,image/jpg,image/png"> <input id="file2" class="ufile" type="file" name="file2" accept="image/gif,image/jpeg,image/jpg,image/png"> <input id="file3" class="ufile" type="file" name="file3" accept="image/gif,image/jpeg,image/jpg,image/png">
javascript:
var user_real_name = $("#user_real_name").val(); var fileObj1 = document.getElementById("file1").files[0]; // js 获取文件对象 var fileObj2 = document.getElementById("file2").files[0]; // js 获取文件对象 var fileObj3 = document.getElementById("file3").files[0]; // js 获取文件对象 var formFile = new FormData(); formFile.append("user_real_name",user_real_name); formFile.append("file1", fileObj1);//加入文件对象 formFile.append("file2", fileObj2);//加入文件对象 formFile.append("file3", fileObj3); //加入文件对象 $.ajax({ url:"/User/userUpdate", data:formFile, type:"post", dataType:"json", processData :false, // 不处理发送的数据,因为data值是Formdata对象,不需要对数据做处理 contentType :false, // 不设置Content-type请求头 success:function(data){ if(data.statusCode==200){ console.log("成功"); }else{ console.log("失败"); } $("input[type=file]").val(''); }, error:function(){ console.log("错误"); } });
php:
$data['user_real_name']=$_POST['user_real_name']; if(!empty($_FILES)){ //有文件上传时 $msg['img1']=''; $msg['img2']=''; $msg['img3']=''; if(!empty($_FILES['file1'])){ $file['file']=$_FILES['file1']; $url = ToolModel::UploadAws($file); //亚马逊云上传 $data["user_face_image"]=trim($url); //返回的文件路径 $msg['img1']=$data["user_face_image"]; } if(!empty($_FILES['file2'])){ $file['file']=$_FILES['file2']; $url = ToolModel::UploadAws($file); //上传 $data["user_back_image"]=trim($url); //返回的文件路径 $msg['img2']=$data["user_back_image"]; } if(!empty($_FILES['file3'])){ $file['file']=$_FILES['file3']; $url = ToolModel::UploadAws($file); //上传 $data["user_body_image"]=trim($url); //返回的文件路径 $msg['img3']=$data["user_body_image"]; } } $User = new UserModel(); $res =$User->userUpdate($uid,$data); //更新数据 if($res!==false){ $msg['statusCode']=200; $msg['msg']='上传成功'; $this->ajaxReturn($msg,'JSON'); }else{ $msg['statusCode']=1000; $msg['msg']='上传失败'; $this->ajaxReturn($msg,'JSON'); }
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:使用Catalyst进行自然语言处理
· 分享一个我遇到过的“量子力学”级别的BUG。
· Linux系列:如何调试 malloc 的底层源码
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 历时 8 年,我冲上开源榜前 8 了!
· 物流快递公司核心技术能力-海量大数据处理技术
· 四大AI编程工具组合测评
· 关于能否用DeepSeek做危险的事情,DeepSeek本身给出了答案
· 如何在 Github 上获得 1000 star?