我ḿ 尝试从ajax示例化并执行自定义类方法,但返回500代码错误,以下是ajax:
我希望ajax调用从给定的xml创建一个数组,这是按预期工作的,之后我需要从sql查询创建一个数组并执行insert语句,并且使用sql数组中的数据,我必须调用一个类方法ḿ 制作包含但不起作用的
function BorraEmple(TipoDocu,NumePers)
{
if(confirm("Eliminar Empleado ("+TipoDocu+" "+NumePers+"), Desea Continuar?"))
{
var CodiDocu =$("#CmbCodiDocu").val();
var NumeDocu =$("#TxtNumeDocu").val();
$.ajax({
type: 'POST',
url: 'borraemple.php',
data: "Accion=BorraEmple"+"&TipoDocu="+TipoDocu+"&NumePers="+NumePers+"&CodiDocu="+CodiDocu+"&NumeDocu="+NumeDocu,
dataType: 'text',
async: false,
success: function(data)
{
setTimeout(function(){
location.reload();
}, 2000);
if(/ErrorSQL/.test(data))
alert("Error al consultar el registro, contacte a soporte tecnico");
else
{
if(data!='')
alert(data);
}
alert("El registro ha sido eliminado");
},
error: function(xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
}
});
}
}
下面是php:
<?php
include_once(SIH_PATH.'clases/FES/nominajuste.class.php');
if($_POST[Accion]=='BorraEmple'){
$TipoDocu=$_POST[TipoDocu];
$NumePers=$_POST[NumePers];
$CodiDocu=$_POST[CodiDocu];
$NumeDocu=$_POST[NumeDocu];
if(strlen($MesInve)==1)
$MesInve2='0'.$MesInve;
else
$MesInve2=$MesInve;
$DocuApli=docuapli($CodiDocu);
$Cond='';
if($DocuApli==124){
$EnviNomi = parametros('EnviNomi', 2);
if($EnviNomi==1){
function getArray(){
$doc = new DOMDocument();
$doc->preserveWhiteSpace = true;
$doc->load('NominaIndividualDeAjusteElectronicaXSDV1.0.xsd');
$doc->save('a.xml');
$xmlfile = file_get_contents('a.xml');
$parseObj = str_replace($doc->lastChild->prefix.':',"",$xmlfile);
$doc->doc->textContent;
$ob= simplexml_load_string($parseObj);
$json = json_encode($ob, JSON_PRETTY_PRINT);
$arrayNomiElect = json_decode($json, true);
return $arrayNomiElect;
}
$sqlNumePers = "SELECT CodiDocu, NumeDocu, CodiInst, CodiAno, CodiMes, TipoDocu, NumePers FROM DetaNomi WHERE CodiDocu='$CodiDocu' AND NumeDocu='$NumeDocu' AND NumePers=$NumePers GROUP BY TipoDocu,NumePers";
$resNumePers = query($sqlNumePers,2);
$ManeNoEl = parametros('ManeNoEl');
foreach($resNumePers as $key => $value) {
$datos = array(
'CodiDocu' => $value['CodiDocu'],
'NumeDocu' => $value['NumeDocu'],
'CodiInst' => $value['CodiInst'],
'CodiAno' => $value['CodiAno'],
'CodiMes' => $value['CodiMes'],
'TipoDocu' => $value['TipoDocu'],
'NumePers' => $value['NumePers'],
'arraybase' => getArray()
);
$sqlIns="INSERT INTO NomiElec (CodiDocu, NumeDocu, CodiInst, CodiAno, CodiMes, TipoDocu, NumePers) VALUES ('$datos[CodiDocu]','$datos[NumeDocu]','$datos[CodiInst]','$datos[CodiAno]','$datos[CodiMes]','$datos[TipoDocu]','$datos[NumePers]')";
//echo $sqlIns; exit();
query($sqlIns);
if($ManeNoEl == 1){
$nominaElect = new NominaAjuste($datos);
$nominaElect->getEstructura('E');
}
}
}
else
$retorno='';
echo $retorno;
}
我已经在没有ajax的情况下测试了这些功能,一切正常,我对ajax不是很熟悉,也不知道自己是否做得很好。。
谢谢
暂无答案!
目前还没有任何答案,快来回答吧!