I have an ajax script of which gatheres values from inputs and then inserts to a mysql database using MYSQLI
.
When i click the button the unique id is returned successfully but none of the post values are being inserted into the database. Also when testing the post values individually they too do not show as reaching the posted php script.
After running this the unique id is in the database but no other information is stored.
Q. How come the variables not reaching the PHP, thus preventing me from a successful insertion to the database?
The Ajax
$('#postData').click(function() {
smallVan_getForm_values();
$.ajax({
type: "POST",
dataType: "json",
url: "//xxxxx",
data: JSON.stringify({
book_email:book_email,
book_clientTitle : book_clientTitle,
book_firstname : book_firstname,
book_lastname :book_lastname,
book_dateofbirth : book_dateofbirth,
book_primarycontactnumber : book_primarycontactnumber,
book_secondarycontactnumber : book_secondarycontactnumber,
departing_first_lineaddress : departing_first_lineaddress,
departing_second_lineaddress : departing_second_lineaddress,
departing_postcode : departing_postcode,
destination_first_lineaddress : destination_first_lineaddress,
destination_second_lineaddress : destination_second_lineaddress,
destination_postcode : destination_postcode,
amount : amount,
book_consignmentdate : book_consignmentdate,
book_timeofbooking : book_timeofbooking,
book_additionalnotes : book_additionalnotes
}),
contentType: "application/json; charset=utf-8",
success: function (result) {
// alert(result);
if (result.status == "success"){
uniqueID = result.uniqueID;
alert(uniqueID);
}
}
});
});
});
//AJAX END
The PHP
if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) && !empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest')
{ //if request made from localserver then proceed here
insertData();
}
function insertData() {
$uniqueID = substr(str_shuffle(str_repeat("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWYXZ", 10)), 0, 10);
$conn=mysqli_connect("xxxx","xxx","xxxxx^","xxxxx");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
// Perform queries
mysqli_query($conn,"INSERT INTO bookings_table ( booking_uniqueID , book_email , book_clientTitle , book_firstname , book_lastname , book_dateofbirth , book_primarycontactnumber , book_secondarycontactnumber , departing_first_lineaddress , departing_second_lineaddress , departing_postcode , destination_first_lineaddress , destination_second_lineaddress , destination_postcode , amount , book_consignmentdate , book_timeofbooking , book_additionalnotes )
VALUES ( '$uniqueID' , '$_POST[book_email]' , '$_POST[book_clientTitle]' , '$_POST[book_firstname]' , '$_POST[book_lastname]' , '$_POST[book_dateofbirth]' , '$_POST[book_primarycontactnumber]' , '$_POST[book_secondarycontactnumber]' , '$_POST[departing_first_lineaddress]' , '$_POST[departing_second_lineaddress]' , '$_POST[departing_postcode]' , '$_POST[destination_first_lineaddress]' , '$_POST[destination_second_lineaddress]' , '$_POST[destination_postcode]' , '$_POST[amount]' , '$_POST[book_consignmentdate]' , '$_POST[book_timeofbooking]' , '$_POST[book_additionalnotes]' )");
mysqli_close($conn);
echo json_encode(array('status' => 'success', 'uniqueID' => $uniqueID));
}
just remove your JSON.stringify().
data: {
book_email:book_email,
book_clientTitle : book_clientTitle,
book_firstname : book_firstname,
book_lastname :book_lastname,
book_dateofbirth : book_dateofbirth,
book_primarycontactnumber : book_primarycontactnumber,
book_secondarycontactnumber : book_secondarycontactnumber,
departing_first_lineaddress : departing_first_lineaddress,
departing_second_lineaddress : departing_second_lineaddress,
departing_postcode : departing_postcode,
destination_first_lineaddress : destination_first_lineaddress,
destination_second_lineaddress : destination_second_lineaddress,
destination_postcode : destination_postcode,
amount : amount,
book_consignmentdate : book_consignmentdate,
book_timeofbooking : book_timeofbooking,
book_additionalnotes : book_additionalnotes
},