javascript - 如何使用Jquery和Ajax将Json数据发送到数据库?

标签 javascript php jquery ajax json

当我单击按钮时,我已经制作了客户详细信息表单,它将 Json 数据发送给客户。但我的代码没有将数据插入数据库。我是网络技术新手,请告诉我哪里错了。

我的脚本:

 <script>   
    $(document).ready(function(){              
            $("#btnBooking").on("click", function(){                   

                var uName = document.getElementById('userName').value;        
                var mailId = document.getElementById('addressemailId').value;           
                var mobNum = document.getElementById('userContactNumber').value;                    
                $.ajax({
                    url:"http://192.168.1.11/customerhomes/customer.php", 
                    type:"GET", 
                    dataType:"json", 
                    data:{type:"booking",Name:uName, Email:mailId, Mob_Num:mobNum}, 
                    //type: should be same in server code, otherwise code will not run
                    ContentType:"application/json", 
                    success: function(response){ 
                            alert("13");                                                 
                        }, 
                        error: function(err){ 
                        alert(JSON.stringify(err)); 
                    } 
                })              
            }); 
    });
</script>

html 表单

<body>
    <div class="page-header text-center">
        <form >
            <div class="col-lg-8">                                  
                <div class="form-group">
                        <label class="col-lg-3 control-label">Name:<font style="color: red;">*</font></label>
                        <div class="col-lg-9">
                            <input type="text" class="form-control" id="userName" name="userName" placeholder="Full Name" value="">
                        </div>
                </div>


                <div class="form-group">
                    <label class="col-lg-3 control-label">Mobile:<font style="color: red;">*</font></label>
                    <div class="col-lg-9">
                        <input type="text" class="form-control" id="userContactNumber" name="userContactNumber" type="number" placeholder="" onkeypress="enableKeys(event);" maxlength="10" placeholder="9966778888">
                    </div>
                </div>

                <div class="form-group">
                        <label class="col-lg-3 control-label">Email:<font style="color: red;">*</font></label>
                        <div class="col-lg-9">                                  
                            <input type="text" class="form-control" name="addressemailId" id="addressemailId" placeholder="you@example.com" value="">
                        </div>
                </div>  
                <div class="form-group marg-bot-45">
                    <label class="col-lg-3 control-label"></label>
                    <div class="col-lg-9">

                        <a href="" class="btn btn-info"  id="btnBooking">Confirm Booking</a>
                    </div>
                </div>
            </div>
        </form>
    </div>
</body>

服务器代码

<?php
header('Access-Control-Allow-Origin: *');//Should work in Cross Domaim ajax Calling request
mysql_connect("localhost","root","1234");
mysql_select_db("customer_details");
if(isset($_GET['type']))
{
    if($_GET['type']=="booking"){
        $name = $_GET ['Name'];
        $mail = $_GET ['Email'];
        $mobile = $_GET ['Mob_Num'];
        $query1 = "insert into customer(cust_name, cust_mobile, cust_email) values('$name','$mail','$mobile')";
        $result1=mysql_query($query1);
    }
}
else{
    echo "Invalid format";
}

最佳答案

使用这个

JavaScript 代码:

<script>
        $(document).ready(function(){
            $("#btnBooking").on("click", function(e){

                // as you have used hyperlink(a tag), this prevent to redirect to another/same page
                e.preventDefault();

                // get values from textboxs  
                var uName = $('#userName').val();
                var mailId = $('#addressemailId').val();
                var mobNum = $('#userContactNumber').val();

                $.ajax({
                    url:"http://192.168.1.11/customerhomes/customer.php",
                    type:"GET",
                    dataType:"json",
                    data:{type:"booking",Name:uName, Email:mailId, Mob_Num:mobNum},
                    //type: should be same in server code, otherwise code will not run
                    ContentType:"application/json",
                    success: function(response){
                        alert(JSON.stringify(response));
                    },
                    error: function(err){
                        alert(JSON.stringify(err));
                    }
                })
            });
        });
    </script>

PHP 代码

<?php
header('Access-Control-Allow-Origin: *');//Should work in Cross Domaim ajax Calling request
 mysql_connect("localhost","root","1234");
 mysql_select_db("customer_details");
if(isset($_GET['type']))
{
    $res = [];

    if($_GET['type'] =="booking"){
        $name  = $_GET ['Name'];
        $mail  = $_GET ['Email'];
        $mobile  = $_GET ['Mob_Num'];
        $query1  = "insert into customer(cust_name, cust_mobile, cust_email) values('$name','$mail','$mobile')";
        $result1 = mysql_query($query1);

        if($result1)
        {
            $res["flag"] = true;
            $res["message"] = "Data Inserted Successfully";
        }
        else
        {
            $res["flag"] = false;
            $res["message"] = "Oppes Errors";
        }

    }
}
else{
    $res["flag"] = false;
    $res["message"] = "Invalid format";
}

    echo json_encode($res);
?>

如果数据插入成功,则返回 true 标志和消息,否则返回 false 标志和消息

关于javascript - 如何使用Jquery和Ajax将Json数据发送到数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27997839/

相关文章:

javascript - html5 拖放使用 jquery(不是 jquery UI)

php - 如何检测 AJAX 中的错误?

php - 更新在 mysql 中不起作用

javascript - 如何在 Vue js 中在线引用图片?

javascript - 在绝对定位的 div 内以 %-width float

php - Zend/Barcode/Barcode.php 处的 Codeigniter + Zend 条码错误

javascript - 定位属性的值,匹配并找到其他元素的值并更改 css

jquery - 使用 css/jquery 自定义垂直滚动条

javascript - Select2 重新初始化不起作用

javascript - 装有NPM的jQuery抛出$ .ajax不是函数