I got an error of Internal server and integrity error how can i solve this

I got an error when i want to fetch value from html page to ajax, and i got null.

view.py
`def placeorder(request):
if not ‘userid’ in request.session:
return redirect(‘login’)

if request.method == 'POST':
    print("hii")
    neworder = Order()
    neworder.user_id = request.session['userid']
    neworder.fname = request.POST.get('firstname')
    neworder.lname = request.POST.get('lastname')
    neworder.address = request.POST.get('address')
    neworder.city = request.POST.get('city')
    neworder.state = request.POST.get('state')
    neworder.country = request.POST.get('country')
    neworder.zipcode = request.POST.get('code')
    neworder.phone = request.POST.get('phone')
    print(neworder.fname)
    #PAYMENT MODE:
    # neworder.payment_mode = request.POST.get('payment_mode')
    neworder.payment_id = request.POST.get('payment_id')

    cart = Cart.objects.filter(user=request.session['userid'])
    cart_total_price = 0
    for item in cart:
        cart_total_price = cart_total_price + item.product.Price * item.quantity

    neworder.totalprice = cart_total_price
    neworder.save()

    neworderitems = Cart.objects.filter(user=request.session['userid'])
    for item in neworderitems:
        OrderItem.objects.create(
            order=neworder,
            product=item.product,
            price=item.product.Price,
            quantity=item.quantity 
        )

        #Decrease the quantity from order stocks:
        # orderproduct = Products.objects.


    Cart.objects.filter(user=request.session['userid']).delete()
    messages.success(request, "Your order is placed!")

return redirect("home")`

js file:
`$(document).ready(function(response){

$('.paywithrazorpay').click(function (e){
    e.preventDefault();

    var fname = $("[name='firstname']").val();
    var lname = $("[name='lastname']").val();
    var address = $("[name='address']").val();
    var city = $("[name='city']").val();
    var state = $("[name='state']").val();
    var country = $("[name='country']").val();
    var code = $("[name='code']").val();
    var phone = $("[name='phone']").val();
    var token = $("[name='csrfmiddlewaretoken']").val();
    if(fname == "" || lname == "" || address == "" || city == "" || state == "" || country == "" || code == "" || phone == ""){
        // swal("Alert!","All fields are mandatory", "error");
        alert("error")
        return false;
    }
    else{
        // console.alert(fname)
        $.ajax({
            method : "GET",
            url : "/proceed_to_pay",
            dataType : "json",
            // datatype : "datatype",
            success: function (response){
                var options = {
                    "key": "rzp_test_xftiEQRdK00lAf", // Enter the Key ID generated from the Dashboard
                    "amount": response.total_price * 100, // Amount is in currency subunits. Default currency is INR. Hence, 50000 refers to 50000 paise
                    "currency": "INR",
                    "name": "NithClothing",
                    "description": "Test Transaction",
                    "image": "https://example.com/your_logo",
                    // "order_id": "order_IluGWxBm9U8zJ8", //This is a sample Order ID. Pass the `id` obtained in the response of Step 1
                    "handler": function (responseb){
                        alert(responseb.razorpay_payment_id);
                        console.log(fname);
                        $.ajax({
                            method:"POST",
                            url: "placeorder",
                            // headers:{
                            //     "X-CSRFToken": token
                            // },
                            data:  {
                            'fname': fname,
                            'lname': lname,
                            'address':address,
                            'city': city,
                            'state': state,
                            'country': country,
                            'code': code,
                            'phone': phone,
                            'payment_id': responseb.razorpay_payment_id,
                            'csrfmiddlewaretoken': token,
                            }  ,
                            // dataType: JSON,
                            success: function (responseb) {
                                window.location.href = '/home'
                            } 
                        });
                    },
                    "prefill": {
                        "name": fname+ " "+lname,
                        // "email": "[email protected]",
                        "contact": phone
                    },
                    // "notes": {
                    //     "address": "Razorpay Corporate Office"
                    // },
                    "theme": {
                        "color": "#3399cc"
                    }
                };
                var rzp1 = new Razorpay(options);
                rzp1.open();
            }
        
        });
    }
});

});`

I want the value of form which i fill as a input to save in database after payment.