Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 数据保存到数据库时,Ajax调用后引导模式不显示在屏幕上_Javascript_Php_Jquery_Bootstrap Modal - Fatal编程技术网

Javascript 数据保存到数据库时,Ajax调用后引导模式不显示在屏幕上

Javascript 数据保存到数据库时,Ajax调用后引导模式不显示在屏幕上,javascript,php,jquery,bootstrap-modal,Javascript,Php,Jquery,Bootstrap Modal,我有一个将数据保存到数据库的功能,然后显示一条成功/错误消息。数据按预期保存,但消息没有显示给用户(模式没有出现在屏幕上),我不知道为什么 我从php返回的是一个带有两个变量的json 如果我不保存数据,只发送消息,则会显示模式,没有错误,但如果我保存数据,则不会在屏幕上显示模式 有人能告诉我为什么吗 function GrabarCompra() { $GuardarModifcarFactura=$_POST['btnFactura']; $FK_Usuario=$_SES

我有一个将数据保存到数据库的功能,然后显示一条成功/错误消息。数据按预期保存,但消息没有显示给用户(模式没有出现在屏幕上),我不知道为什么

我从php返回的是一个带有两个变量的json

如果我不保存数据,只发送消息,则会显示模式,没有错误,但如果我保存数据,则不会在屏幕上显示模式

有人能告诉我为什么吗

function GrabarCompra()
{
    $GuardarModifcarFactura=$_POST['btnFactura'];

    $FK_Usuario=$_SESSION['IDUsuario'];

    $GuarMod='';
    $Respuesta=''; 

    if($GuardarModifcarFactura=='GrabarFactura')
    {
        $IDCompra=0;

        $ClaveHacienda=$_POST['NoClaveDoc'];
        $NumeroConsecutivo=substr($_POST['NoClaveDoc'],21,20);
        $TipoDocumento=ObtenerTipoDocumentoNumerico($_POST['TipoDocumento']);
        $FechaEmision= DateTime::createFromFormat('d-m-Y', $_POST['Fecha'])->format('Y-m-d H:i:s');
        $ActividadEconomica=$_POST["ActividadEconomica"];

        //Emisor

        $NombreEmisor=$_POST["NombreEmisor"];
        $CedulaEmisor=$_POST["CedulaEmisor"];

        //Receptor

        $NombreReceptor=$_POST["NombreReceptor"];
        $CedulaReceptor=$_POST["CedulaReceptor"];

        //Otros Datos
        $CondicionVenta=$_POST['CondicionVenta'];   
        $Plazo=$_POST['Plazo'];

        $CodigoMoneda=$_POST['TipoMoneda'];
        $TipoCambio=$_POST['TipoCambio'];
        $TotalServGravados=QuitarFormatoNumero($_POST['MontSGF']);
        $TotalServExentos=QuitarFormatoNumero($_POST['MontSEF']);
        $TotalServExonerados=QuitarFormatoNumero($_POST['MontSExoF']);
        $TotalMercanciasGravadas=QuitarFormatoNumero($_POST['MontGrF']);
        $TotalMercanciasExentas=QuitarFormatoNumero($_POST['MontExF']);
        $TotalMercanciasExoneradas=QuitarFormatoNumero($_POST['MontExoF']);

        $TotalGravado=bcdiv(($TotalServGravados+$TotalMercanciasGravadas),1,2);
        $TotalExento=bcdiv(($TotalServExentos+$TotalMercanciasExentas),1,2);
        $TotalExonerado=bcdiv(($TotalServExonerados+$TotalMercanciasExoneradas),1,2);

        $TotalVenta=bcdiv(($TotalGravado+$TotalExento+$TotalExonerado),1,2);
        $TotalDescuentos=QuitarFormatoNumero($_POST['MontDescF']);
        $TotalVentaNeta=QuitarFormatoNumero($_POST['MontSubF']);
        $TotalImpuesto=QuitarFormatoNumero($_POST['MontIVF']);

        $TotalComprobante= QuitarFormatoNumero($_POST['MontTF']);       

        $ImpuestoDevuelto= QuitarFormatoNumero($_POST['MontIVDF']);


       $MedioPago= "01";      

       $Terminal= substr($NumeroConsecutivo,0,3);
       $Sucursal= substr($NumeroConsecutivo,3,5);

       $Conexion = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);

        if ($Conexion->connect_error) 
        {
            die("Connection failed: " . $Conexion->connect_error);
        } 

        $sql="INSERT INTO Compra 
              (FK_Usuario,FK_Cliente,Fecha,Status,
                        ClaveLarga,
                        Secuencia,
                        ClaveHacienda,
                        NumeroConsecutivoHacienda,
               TipoDocumento,NombreEmisor,NombreComercialEmisor,TipoEmisor,NombreReceptor,CedulaReceptor,TipoReceptor,
               CondicionVenta,Plazo,MedioPago,CodigoMoneda,TipoCambio,Mensaje,TotalServGravados,TotalServExentos,
               TotalServExonerados,TotalMercanciasGravadas,TotalMercanciasExentas,TotalMercanciasExoneradas,TotalGravado,
               TotalExento,TotalExonerado,TotalVenta,TotalDescuentos,TotalVentaNeta,TotalImpuesto,TotalComprobante,
               FK_ActividadEconomica)
               VALUES
               ($FK_Usuario,'$CedulaEmisor','$FechaEmision','','','','$ClaveHacienda','$NumeroConsecutivo','$TipoDocumento',
                '$NombreEmisor','$NombreComercialEmisor','','$NombreReceptor','$CedulaReceptor','','$CondicionVenta',$Plazo,
                '$MedioPago','$CodigoMoneda',$TipoCambio,'',$TotalServGravados,$TotalServExentos,$TotalServExonerados,
                $TotalMercanciasGravadas,$TotalMercanciasExentas,$TotalMercanciasExoneradas,$TotalGravado,$TotalExento,
                $TotalExonerado,$TotalVenta,$TotalDescuentos,$TotalVentaNeta,$TotalImpuesto,$TotalComprobante,
                $ActividadEconomica);";

        if($Conexion->query($sql) === TRUE) 
        { 
            $Respuesta="Documento guardado correctamente";           
            $GuarMod='Guardo';
        }
        else
        {
          $Respuesta= "Error al guardar el documento";
          $GuarMod='Error';
        }
    }
            $users_arr[] = array( 
                             "Respuesta"=>$Respuesta,
                             "GuarMod"=>$GuarMod,
                         );

        // encoding array to json format
        echo json_encode($users_arr);
        exit;    
}
Ajax

$.ajax({
                      url: 'Logica/Compra.php',
                      type: 'post',
                      data: 
                      {
                         btnFactura:TipoBoton,

                         /*Campos de encabezado de Factura*/

                         /*Emisor*/

                         CedulaEmisor:document.getElementById('Cedula').value,
                         NombreEmisor:document.getElementById('Nombre').value,

                         /*Receptor*/
                         CedulaReceptor:document.getElementById('CedulaReceptor').value,
                         NombreReceptor:document.getElementById('NombreReceptor').value,                     

                         IDFactura:document.getElementById('IDFactura').value,
                         NoFactura:document.getElementById('NoFactura').value,
                         NoClaveDoc:document.getElementById('NoClaveDoc').value,
                         Fecha:document.getElementById('Fecha').value,
                         Plazo:document.getElementById('Plazo').value,

                         ActividadEconomica:'null',

                         MedioPago:MP,

                         CondicionVenta:document.getElementById('CondicionVenta').value,
                         TipoMoneda:document.getElementById('TipoMoneda').value,
                         TipoCambio:document.getElementById('TipoCambio').value,
                         Sucursal:document.getElementById('Sucursal').value,
                         Terminal:document.getElementById('Terminal').value,
                         TipoDocumento:document.getElementById('TipoDocumento').value,/*01=Factura 02=NotaDebito 03=Nota Credito 04=Tiquete*/

                         DetalleFactura:TableData,

                         /*Campos de Calculos*/
                         MontSEF:document.getElementById('MontoSEF').value,
                         MontSGF:document.getElementById('MontoSGF').value,
                         MontSExoF:document.getElementById('MontoSExoF').value,
                         MontExF:document.getElementById('ExentoF').value,
                         MontGrF:document.getElementById('GravadoF').value,
                         MontExoF:document.getElementById('ExoneradoF').value,
                         MontSubF:document.getElementById('SubF').value,
                         MontDescF:document.getElementById('DescF').value,
                         MontIVF:document.getElementById('ImpuestoVentasF').value,
                         MontIVDF:document.getElementById('ImpuestoVentasDevueltoF').value,
                         MontOImpF:document.getElementById('OImpF').value,
                         MontTF:document.getElementById('TotalF').value,

                         Saldo: Saldo,
                      },
                      dataType:'json',
                    success : function(response){

                        var len =response.length;

                        if(len>0)
                        {
                            var Respuesta=response[0]['Respuesta'];
                            var GuarMod=response[0]['GuarMod'];

                            $("#MSJ").html(Respuesta);
                            $("#ModalMSJ").modal("show");

                            sessionStorage.setItem('GuarMod',GuarMod);
                        }
                    }
                  });

                  return false;

如果($GuardarModifcarFactura=='GrabarFactura'),您确定您的代码输入了
。我已经一行一行地调试了代码,一切正常。即使是
$users\u arr[]
也会受到抨击。但该模式不会显示在屏幕上,并且控制台中也不会显示任何错误。请在浏览器的网络检查器中查看响应。确保确实有响应,并且是有效的JSON。还要检查Javascript控制台是否有错误。成功回调后,添加error:function(jqXHR,exception){….为了查看是否发生错误…@Roly这意味着您返回的是HTML,而不是JSON。这可能是由于抛出了错误。正如我已经建议的,您应该在网络检查器中查看原始响应。您确定您的代码输入了
if($GuardarModifcarFactura='GrabarFactura')吗
?我非常确定。我已经逐行调试了代码,一切都正常。甚至
$users\u arr[]
会被触发。但是模式没有显示在屏幕上,控制台中也没有显示错误。请在浏览器的网络检查器中查看响应。确保确实有响应,并且是有效的JSON。还要检查Javascript控制台是否有错误。成功回调后,添加错误:函数(jqXHR,异常){….为了查看是否发生错误…@Roly这意味着您返回的是HTML,而不是JSON。这可能是由于抛出了错误。正如我已经建议的,您应该在网络检查器中查看原始响应。