如何在jQuery验证后在mysql表中插入数据

如何在jQuery验证后在mysql表中插入数据

问题描述:

I have used jquery to validate my form data. As shown bellow:

<form method="post" id="register-form" novalidate>
<table width='100%>
<tr class="dark">
<td> <strong>Event Date:</strong> </td>
<td> <input type="date" name="event_date" id="event_date"> </td>
</tr>

<tr class="light">
<td> <strong> Description </strong> </td>
<td> <input type="text" name="event_desc" id="event_desc"/> </td>
</tr>

<tr class="dark">
<td> <strong> Year </strong> </td>
<td> <input type="text" name="year" id="year"/> </td>
</tr>

</table>

<input type='submit' name='add' value='Save Event'>
</form>


<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
<script src="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>

<link href="runnable.css" rel="stylesheet" />
<!-- Load jQuery and the validate plugin -->
<script src="//code.jquery.com/jquery-1.9.1.js"></script>
<script src="//ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.min.js"></script>

<!-- jQuery Form Validation code -->
  <script>

  // When the browser is ready...
  $(function() {

    // Setup form validation on the #register-form element
    $("#register-form").validate({

        // Specify the validation rules
        rules: {
            event_date: "required",
            event_desc: "required",
            event_date: {
                required: true,
            },

        },

        // Specify the validation error messages
        messages: {
            event_date: "Please select a date",
            event_desc: "Please enter event description",
        },

        submitHandler: function(form) {
            form.submit();
        }
    });

  });

  </script>

Now my question is when the validation finishes where can I use the Insert query to insert the form data in my table. I am talking about this query:

<?php
if(isset ($_POST['add']))
{
     mysql_query("INSERT into events (event_date, event_desc, year)   
                    VALUES('".$_POST['event_date']."',
                           '".$_POST['event_desc']."',
                           '".$_POST['year']."') ");

       echo "<script> alert('1 Record inserted!') </script>"; 
}

So can someone help me how to do it?

please place your query in side the if(isset($_POST['add'])){} condtions to check for post data.

if(isset($_POST['add'])){
//...   some code

 mysql_query("INSERT into events (event_date, event_desc, year)   
                VALUES('".$_POST['event_date']."',
                       '".$_POST['event_desc']."',
                       '".$_POST['year']."') ");
//...   some code
}

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
mysql_select_db('YOUR_DB', $link);
$result = mysql_query("set names 'utf8'");
$result = mysql_query("INSERT into events (event_date, event_desc, year)   
                VALUES('".$_POST['event_date']."',
                       '".$_POST['event_desc']."',
                       '".$_POST['year']."') ")OR die(mysql_error());;
mysql_close($link);
?>