I am sending data through ajax it is working properly using jquery but JavaScript code is giving undefined error
function send_message() {
var name = document.querySelector("#name").value;
var email = document.querySelector("#email").value;
var mobile = document.querySelector("#mobile").value;
var message = document.querySelector("#message").value;
if (name == "") {
alert('Please enter name');
} else if (email == "") {
alert('Please enter email');
}
else if (mobile == "") {
alert('Please enter mobile');
}
else if (message == "") {
alert('Please enter message');
} else {
var ajax = new XMLHttpRequest();
ajax.open("POST", "send_message.php", true);
ajax.setRequestHeader("Content-Type", "application/json");
ajax.onreadystatechange = function () {
if (this.readyState == 4 && this.status == 200) {
// Response
var response = this.responseText;
console.log(response);
alert(response);
}
};
var data = 'name='+name+'&email='+email+'&mobile='+mobile+'&message='+message;
ajax.send(JSON.stringify(data));
}
}
the error code is
<br />
<b>Notice</b>: Undefined index: name in <b>D:\xampp\htdocs\webmakeup\send_message.php</b> on line <b>4</b><br />
<br />
<b>Notice</b>: Undefined index: email in <b>D:\xampp\htdocs\webmakeup
send_message.php is the file I am sending data to. This is my php code
require('connection.inc.php');
require('functions.inc.php');
$name=get_safe_value($con,$_POST['name']);
$email=get_safe_value($con,$_POST['email']);
$mobile=get_safe_value($con,$_POST['mobile']);
$comment=get_safe_value($con,$_POST['message']);
$added_on=date('Y-m-d h:i:s');
mysqli_query($con,"insert into contact_us(name,email,mobile,comment,added_on) values('$name','$email','$mobile','$comment','$added_on')");
echo "Thank you";
?>
$_POSTvariables. So either send URL-encoded data,FormData, or usejson_decode(file_get_contents("php://input", true))in PHP.