我有一个ajax请求在xampp本地工作正常,但一旦它在服务器上我得到错误500响应,(内部服务器错误),请求是这个
$("#numero").on("input", function(){
var numero = $(this).val();
if (numero != "" && isInt( numero ) && (numero >= 0 || numero <= 10000) ) {
if (typeof holdAjax != "undefined") {
clearTimeout(holdAjax);
};
holdAjax = setTimeout(function(){getInfo(numero);}, 500);
}
});
function getInfo(numero){
$.post("get/boleta_informacion.php", { numero:numero }, function(data){
var tds = $("tbody td");
if (data) {
$( tds[0] ).text(data[0]);
$( tds[1] ).text(data[1][0]);
$( tds[2] ).text(data[1][1]);
$( tds[3] ).text(data[2]);
} else {
tds.text("");
$( tds[3] ).text("Boleta no encontrada");
}
}, 'json' );
}
function isInt(n) {
return n % 1 === 0;
}
$("#fecha").datepicker();
$( "#next" ).button();
$("#fcolilla").on("submit", function(e){
var submit = false;
var numero = $("#numero").val();
var fecha = $("#fecha").val();
if (numero === "") {
$( "<div title='Mensaje'>" ).html("<h3 style=''>Ingresa un numero de la boleta</h3>").dialog();
} else if ( !isInt( numero ) ) {
$( "<div title='Mensaje'>" ).html("<h3 style=''>Ingresa un numero entero</h3>").dialog();
} else if (numero < 0 || numero > 10000) {
$( "<div title='Mensaje'>" ).html("<h3 style=''>El numero debe estar en el rango 0-10000</h3>").dialog();
} else if( fecha == "" ){
$( "<div title='Mensaje'>" ).html("<h3 style=''>Ingresa la fecha en que la boleta fue vendida</h3>").dialog();
} else {
var request = $.ajax({
url: "get/boleta_informacion.php",
type: "POST",
data: { numero : numero },
dataType: "json",
async: false
});
request.done(function( msg ) {
if (msg) {
if ( msg[2] === "en venta" ) {
var boletaID = msg[0];
var colilla = {boletaID:boletaID,fecha:fecha};
$("#boletaID").val(boletaID);
var numeros = "";
for (var i = 0; i < msg[1].length; i++) {
numeros += msg[1][i];
if ( i < (msg[1].length-1)) {
numeros += ",";
};
};
$("#numeros").val( numeros );
submit = true;
} else {
$( "<div title='Mensaje'>" ).html("<h3 style=''>No se puede ingresar la colilla, el estado de la bolet es " + msg[2] + "</h3>").dialog();
}
} else {
$( "<div title='Mensaje'>" ).html("<h3 style=''>No encontrada</h3>").dialog();
}
});
request.fail(function( jqXHR, textStatus, errorThrown ) {
alert( "Request failed: " + textStatus + " ", + errorThrown);
});
}
if (!submit) {
e.preventDefault();
};
});
之前我遇到过类似的问题,但我认为错误代码为305,但记不清楚,那次我通过cpanel中的changind“ModSecurity status”将其解析为“no active”或“Detect Mode”,这次没有任何影响,代码有什么问题吗? 而服务器端是
<?php
include_once 'init.php';
if ( input::exists("get") || input::exists("post")) {
if (!empty(Input::get("numero"))) {
$numero = Input::get("numero");
$b = new Boletas();
$check = $b->checkNumero($numero);
if ($check) {
$boletaID = $check->boletaID;
$numeros = $b->getNumeros( $boletaID );
$estado = $b->getBoletaEstado($boletaID);
echo json_encode([ $boletaID, $numeros, $estado ]);
} else {
echo json_encode(false);
}
}
}
它出了什么问题?