Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.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
Php 使用ajax签出表单提交_Php_Jquery_Mysqli - Fatal编程技术网

Php 使用ajax签出表单提交

Php 使用ajax签出表单提交,php,jquery,mysqli,Php,Jquery,Mysqli,我想使用ajax提交我的表单,我的脚本代码没有任何错误,我的php也没有任何错误,但是当我单击submit按钮时,什么都没有发生,表单将清空,否则什么都没有发生,数据不会存储在数据库中。我不知道是什么错误。我不知道怎么找到它,谁能帮我修一下吗 <div class="container-fluid"> <h3 class="alert alert-success" align="center">CHECKOUT FORM</h3&

我想使用ajax提交我的表单,我的脚本代码没有任何错误,我的php也没有任何错误,但是当我单击submit按钮时,什么都没有发生,表单将清空,否则什么都没有发生,数据不会存储在数据库中。我不知道是什么错误。我不知道怎么找到它,谁能帮我修一下吗

  <div class="container-fluid">
                <h3 class="alert alert-success" align="center">CHECKOUT FORM</h3>
                <form id="checkout_form">
                <div class="row">

                        <div class="col-md-2">

                        </div>

                        <div class="col-md-4">
                            <div class="form-group">
                              <label for="usr">Name:</label>
                              <input type="text" class="form-control" id="name" name="name">
                            </div>
                            <div class="form-group">
                              <label for="email">Email:</label>
                              <input type="text" class="form-control" id="email" name="email">
                            </div>
                             <div class="form-group">
                              <label for="address">Address:</label>
                              <input type="text" class="form-control" id="address" name="address">
                            </div>
                             <div class="form-group">
                              <label for="city">City:</label>
                              <input type="text" class="form-control" id="city" name="city">
                            </div>
                            <div class="form-group">
                              <label for="city">State:</label>
                              <input type="text" class="form-control" id="state" name="state">
                            </div>
                        </div>
                        <div class="col-md-4">
                            <div class="form-group">
                              <label for="card">Card Name:</label>
                              <input type="text" class="form-control" id="card_name" name="card_name">
                            </div>
                            <div class="form-group">
                              <label for="cvv">CVV:</label>
                              <input type="text" class="form-control" id="cvv" name="cvv">
                            </div>
                             <div class="form-group">
                              <label for="card_num">Card Number:</label>
                              <input type="text" class="form-control" id="card_number" name="card_number">
                            </div>
                             <div class="form-group">
                              <label for="expired_month">Expire Month:</label>
                              <input type="text" class="form-control" id="expired_month" name="expired_month">
                            </div>
                            <div class="form-group">
                              <label for="zip">Zip Code:</label>
                              <input type="text" class="form-control" id="zip_code" name="zip_code">
                            </div>

                            <input type="submit" name="submit" class="btn btn-success" value="CHECKOUT" action = "checkout" id="submit">
                        </div>



                </div>
                </form> 
            </div>

结帐单
姓名:
电邮:
地址:
城市:
声明:
卡名:
CVV:
卡号:
到期月份:
邮政编码:
脚本代码

<script>
    $(document).ready(function(){

        $('#submit').click(function(){


        var name = $('#name').val();
        var email = $('#email').val();
        var address = $('#address').val();
        var city = $('#city').val();
        var state = $('#state').val();
        var card_name = $('#card_name').val();
        var cvv = $('#cvv').val();
        var card_number = $('#card_number').val();
        var expired_month = $('#expired_month').val();
        var zip = $('#zip_code').val();

        var data_string ='name='+ name + '&email=' + email + '&address=' + address + '&city=' + city + '&state=' + state + '&card_name=' + card_name + '&cvv=' + cvv + '&card_number=' + card_number + '&expired_month' + expired_month + '&zip' + zip_code ;


        $.ajax({
            url : "action1.php",
            method : "POST",
            data :data_string,
            success:function(data){
                $('#checkout_form').html("<div id='message'></div>");
                $('#message').val("form submitted");
            }
        });
    });
});
    </script>

$(文档).ready(函数(){
$(“#提交”)。单击(函数(){
var name=$('#name').val();
var email=$('#email').val();
var address=$('#address').val();
var city=$('#city').val();
var state=$('#state').val();
var card_name=$('#card_name').val();
var cvv=$('#cvv').val();
var卡号=$(“#卡号”).val();
var expired_month=$(“#expired_month”).val();
var zip=$('#zip_代码').val();
var数据字符串='name='+name+'&email='+email+'&address='+address+'&city='+city+'&state='+state+'&card\u name='+card\u name+'&cvv='+cvv+'&card\u number='+card\u number+'&expired\u month'+expired\u+'&zip'+zip;
$.ajax({
url:“action1.php”,
方法:“张贴”,
数据:数据字符串,
成功:功能(数据){
$('#checkout_form').html(“”);
$(“#消息”).val(“提交的表格”);
}
});
});
});
action1.php

<?php

include('database_connection.php');

if(isset($_POST['submit']){

        $data = array(
            ':name' => $_POST['name'],
            ':email' => $_POST['email'],
            ':address' => $_POST ['address'],
            ':city' => $_POST['city'],
            ':state' => $_POST['state'],
            ':card_name' => $_POST ['card_name'],
            ':cvv' => $_POST['cvv'],
            ':card_number' => $_POST['card_number'],
            ':expired_month' => $_POST['expired_month'],
            ':zip_code'=> $_POST['zip_code']
        );

        $query = "INSERT INTO checkout (name,email,address,city,state,card_name,cvv,card_number,expired_month,zip_code) VALUES (:name,:email,:address,:city,:state,:card_name,:cvv,:card_number,:expired_month,:zip_code)";

        $statement = $connect ->prepare($query);

        if($statement->execute($data))
        {
            echo "form submitted";
        }
}
?>

单击提交时,表单页面正在刷新。这样做:

$('#submit').click(function(e){
     e.preventDefault;
如评论中所述,还:

echo $query;
exit; //This exit is causing the query not to run because the script stops running.
字段名前面有分号。删除它们:

$data = array(
            'name' => $_POST['name'],
            'email' => $_POST['email'],
            'address' => $_POST ['address'],
            'city' => $_POST['city'],
            'state' => $_POST['state'],
            'card_name' => $_POST ['card_name'],
            'cvv' => $_POST['cvv'],
            'card_number' => $_POST['card_number'],
            'expired_month' => $_POST['expired_month'],
            'zip_code'=> $_POST['zip_code']
        );

欢迎来到Stackoverflow@prabhu msd

添加
e.default作为此代码下的第一行:

$('#submit').click(function(){
它防止刷新页面并运行Ajax。在成功下添加
location.reload()在这一行之后
$('#message').val(“提交的表单”)
在提交数据后刷新页面(如果您想刷新页面),否则执行您想要的操作


在PHP文件中,您使用的是exit,它会阻止查询的执行。请删除数据库中未存储的
退出

数据。帮助me@PrabhuMsd由于
echo$query,您的数据未保存;退出注释这一行,然后再次检查。我已经删除了该语句…但是什么也没有发生兄弟,请帮助我。我是否也要删除插入查询中的分号?数据不存储在数据库中…我需要存储,但我找不到问题所在is@PrabhuMsd添加
console.log(数据)
“成功”下,并提供其结果。其次,在执行查询之前使用exit。请同时删除
退出
<代码>echo$查询;退出
我已删除该语句…但没有发生任何事情,兄弟,请帮助我尝试控制台错误。log(data),&zip'+zip_code-此行错误现在我删除了错误,但数据未存储在数据库中发送序列化表单而不是字符串。'数据:$(“#签出表单”).serialize();'什么都没发生。。。