为什么我收到此500-内部服务器错误

时间:2020-10-19 05:11:04

标签: php ajax internal-server-error http-status-code-500

我的网站上出现POST 500(内部服务器错误)的消息。

在我的本地主机上进行测试时,我没有任何错误,只有在发布并运行网站后才尝试将产品添加到购物车时出现错误。 在商店的php文件中,我编写了ajax代码,用于将商品添加到购物车中,并将数据通过ajax传递到sql quary的操作文件中,这在localhost服务器中工作正常,但我在实时网站中遇到错误。请告诉我如何解决这个问题。 下面是我的Ajax代码:

<script type="text/JavaScript">
     $(document).ready(function(){
        $(".addItemBtn").click(function(e){
            e.preventDefault();
            var $form =$(this).closest(".form-submit");
            var pid=$form.find(".pid").val();
            var pname=$form.find(".pname").val();
            var pprice=$form.find(".pprice").val();
            var pimage=$form.find(".pimage").val();
            var pcode=$form.find(".pcode").val();
            $.ajax({
                url: 'action.php',
                method: 'get',
                data: {pid:pid,pname:pname,pprice:pprice,pimage:pimage,pcode:pcode},
                success:function(response)
                {
                    $("#message").html(response);
                    load_cart_item_number();

                }
            });
        });
        load_cart_item_number();
        function load_cart_item_number()
        { $.ajax({
            url: 'action.php',
            method: 'get', 
            data: {cartItem:"cart_item"},
            success:function(response){
                $("#cart-item").html(response);
            }

        });

        }

     });
 </script>

这是我的第二个文件action.php

if (isset($_GET['pid'])) {
    $pid=$_GET['pid'];
    $pname=$_GET['pname'];
    $pprice=$_GET['pprice'];
    $pimage=$_GET['pimage'];
    $pcode=$_GET['pcode'];
    $userid= $_SESSION["id"];
    $pqty=1;
     $sql = "SELECT product_id FROM cart WHERE user_id=$userid and product_id = ?";
     $stmt = mysqli_prepare($link, $sql);
     mysqli_stmt_bind_param($stmt, "s", $pcode);
     mysqli_stmt_execute($stmt);
     $res=$stmt->get_result();
     $row=$res->fetch_assoc();
    
     $code=$row['product_id'];
     if(!$code)
     {
        $quary="INSERT INTO `cart`(`user_id`,`product_name`, `product_price`, `product_image`, `qty`, `total_price`, `product_id`) VALUES (?,?,?,?,?,?,?)";
         $stmt = mysqli_prepare($link, $quary);
          mysqli_stmt_bind_param($stmt, "isisiii",$userid,$pname, $pprice,$pimage,$pqty,$pprice,$pcode);
          mysqli_stmt_execute($stmt); 
          echo "Added to Buy Card";

     }
     else{
        echo "Already Added In Buy Card";

     }
    }

1 个答案:

答案 0 :(得分:0)

服务器内部可能存在一些问题。查找并尝试解决该问题。您的浏览器错误日志已禁用。要在浏览器中启用并显示错误,应使用以下代码 //旅行保险计算器的定制

ini_set( 'display_errors', 1 );
ini_set( 'display_startup_errors', 1 );
error_reporting( E_ALL );

如果您未启用错误以在浏览器中显示。然后在服务器内的基本目录中查看错误日志文件。文件名应为 error.log 或其他名称