вы можете использовать jquery попробуйте это, удалите действие из тега формы, я добавлю p
, чтобы показать сообщение от send.php
<form class="form" id="frm-js" method="POST">
<p id="resp_msg"></p>
<div class="form__group">
<input type="text" class="form__input" id="name" name="name" placeholder="Full Name" required>
<label for="name" class="form__label">Full Name</label>
</div>
<div class="form__group">
<input type="text" class="form__input" id="email" name="email" placeholder="Email Address" required>
<label for="email" class="form__label">Email Address</label>
</div>
<div class="form__group">
<input type="text" class="form__input" id="phone" name="phone" placeholder="Phone Number">
<label for="phone" class="form__label">Phone Number</label>
</div>
<div class="form__group">
<textarea id="message" rows="4" cols="50" name="message" class="textarea-frm form__input" maxlength="1000" placeholder="Your message"></textarea>
</div>
<div class="form__group">
<button class="btn" type="submit" name="submit">Book</button>
</div>
</form>
и добавлю функцию jquery (интегрировать jquery если вы еще не библиотека )
$("#frm-js").on("submit", function(event){
event.preventDefault();
var data = $( this ).serialize();
$.post("send.php",{data:data }, function (data) {
//do other stuff like
//reset form items
//show message response
$("#resp_msg").text(data).show();
});
});
это отправка. php так и должно быть
if(isset($_POST['data'])) {
$params = array();
parse_str($_POST['data'], $params);
//send mail
echo "Hi, " . $params['name'] . " your email has sended";
}