local-host 2015-03-31 08:33 采纳率: 100%
浏览 51

ajax javascript 500错误

This is the javascript for a simple multifile upload.

This javascript works on my development server no problem. But when I put it on my production server I get a 500 error on the AJAX Post. Could this be because I have to edit php.ini more? or are there other problems?

var app = app || {};

(function(o){
"use strict";

var ajax, getFormData, setProgress;

ajax = function(data){
  var xmlhttp = new XMLHttpRequest(), uploaded;

  xmlhttp.addEventListener('readystatechange', function(){
     if(this.readyState ===4){

        if(this.status===200){
           //console.log('here');
           uploaded = JSON.parse(this.response);
           if(typeof o.options.finished==='function'){
              o.options.finished(uploaded);
           }
        }else{
           if(typeof o.options.error ==='function'){
              o.options.error();
           }
        }            
     }
  });

  xmlhttp.upload.addEventListener('progress', function(event){
     var percent;
     if (event.lengthComputable ===true){
        percent = Math.round((event.loaded / event.total)*100);
        //console.log(percent);
        setProgress(percent);
     }
  });

  xmlhttp.open('post', o.options.processor);
  xmlhttp.send(data);
};
getFormData = function(source){
  var data = new FormData(), i;

  for( i=0;i<source.length;i=i+1){
     data.append('file[]',source[i]);
  }
  data.append('ajax',true);
  return data;
 };

 setProgress = function(value){
  if(o.options.progressBar !== undefined){
     o.options.progressBar.style.width=value? value + '%': 0; 
  }
  if(o.options.progressText !== undefined){
     o.options.progressText.innerText=value? value + '%': ''; 
  }
 };
 o.uploader = function(options){
  o.options = options;

  if(o.options.files!== undefined){
     ajax(getFormData(o.options.files.files));
  }
 };
}(app));
  • 写回答

1条回答 默认 最新

  • 胖鸭 2015-03-31 09:02
    关注

    giorgio helped me get on the right track I was using $uploaded = []; in my php, if I am not mistaken this is old PHP and the correct way is $uploaded = array(); I am using about 5 array and I guess that XAMP is so lenient that it will run what ever I give to it.

    评论

报告相同问题?

悬赏问题

  • ¥50 易语言把MYSQL数据库中的数据添加至组合框
  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况