zoukankan      html  css  js  c++  java
  • 通过前端上传图片等文件的方法

     <script type="text/javascript">
     
     ##先禁止form表自动提交
     $('form').submit(function () {
       return false
     })
     
     ##点击提交
     $('#add_it').click(function(){
         var formData = new FormData($("form")[0]); //创建一个formData对象,我这里是先把form表里数据 $('form')[0]放进去了,因为有图片文件,不能通过append追加进去
     
         // formData.append();
         var spec_str = JSON.stringify(spec); //对象转化为json字符串
         var note_str = JSON.stringify(note); //对象转化为json字符串
        
         ## 下面这些就是可以通过append 追加除了form外的数据进去,这样PHP后台接收的时候除了上传文件用$_FILES接收, 其他都可以用$_POST接收到(post方式)
         formData.append('spec',spec_str); 
         formData.append('note',note_str);
         formData.append('cid',cid);
         formData.append('gid',gid);
         formData.append('menu_id',menu_id);
        
         ##这里要用ajax方法 
         $.ajax({
             url: '/shopmenu/edit_goods',
             type: 'POST',
             // data: new FormData($("form")[0]),
             data: formData,
             cache: false, #必须
             processData: false, #必须
             contentType: false, #必须
             dataType: 'json',
             success: function (data) {
                 // var data = $.parseJSON(data);
                 // console.log(data);return;
                 if(data.result){
                     layer.alert(data.msg, {icon: 6}, function(){
                         parent.location.reload();
                         ##下面是layui框架写法的刷新,不必理会
                         var index = parent.layer.getFrameIndex(window.name);
                         //关闭当前frame
                         parent.layer.close(index);
                         return;
                     });
                 }else{
                     layer.msg(data.msg, {icon: 2, time:3000});return;
                 }   
             }
         });
     });
     </script>        

    ## 上面前端写好后,PHP后端就可以接收到这些信息

     $_FILES ##因为是通过form表单上传的,所以都是通过input中的name名字来获取值
     ##例如:$_FILES['goods_img']
     
     #判断是否有文件上传
     if (!empty($_FILES['goods_img']) && $_FILES['goods_img']['error'] == 0) {
         echo "有文件上传,所以error为0且不为空”;
     }else{
         echo "无文件上传";    
     } 
     
     ##另外通过post方式传过来的都可以用 $_POST 方法接收到了
  • 相关阅读:
    idea中如何配置tomcat
    onselectstart属性解决双击出现的蓝色区域
    (二十二)数组的最大值和最小值
    (二十一)数组的初始化
    (二十)两种数据类型的对比
    (十九)数组的内存分配
    (十八)数组概述
    (十六)函数的重载
    (十七)自定义函数
    (十五)函数的入栈和出栈
  • 原文地址:https://www.cnblogs.com/pyspang/p/9396163.html
Copyright © 2011-2022 走看看