LS,
Ik loop tegen het volgende aan en hoop dat jullie mij verder kunnen helpen. Ik heb een contactformulier aangemaakt maar de ingevulde data worden niet geleegd na het verzenden van het bericht. Ik heb van alles geprobeerd. Reset functie toegevoegd maar helaas geen succes. hieronder de codes:


htmlcode

<form  method="post" class="contact-form" action="sendemail.php">
<div class="row">
<div class="col-md-6">
<input type="text" class="medium-input" maxlength="50" placeholder="Naam *" required="required" id="name" name="name">
</div>
<div class="col-md-6">
<input type="email" class="medium-input" maxlength="70" placeholder="E-mail *" required="required" id="email" name="email">
</div>
<div class="col-md-6">
<input type="tel" class="medium-input" maxlength="10" placeholder="Telefoonnummer" id="phone" name="phone">
</div>
<div class="col-md-6">
<input type="text" class="medium-input" maxlength="78" placeholder="Onderwerp *" required="required" id="onderwerp" name="onderwerp">
</div>
<div class="col-md-12">
<textarea class="big-textarea" rows="6" maxlength="1000" placeholder="Bericht *" required="required" id="bericht" name="bericht"></textarea>
</div>


<div class="col-md-12 text-center">
<br>
<button class="btn" type="submit">Verstuur bericht </button>

</div>
</div>
</form


sendemail.php

<?php
if(isset($_POST['name'])) {
$to = "[email protected]";
$subject = "contactformulier";
$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$onderwerp = $_POST['onderwerp'];
$bericht = $_POST['bericht'];
$message = "
<html>
<head>
<title> contactformulier</title>
</head>
<body>
<table>
<tr>
<th>Naam</th>
<th>Email</th>
<th>Telefoon</th>
<th>Onderwerp</th>
<th>Bericht</th></tr>
<tr>
<td>".$name."</td>
<td>".$email."</td>
<td>".$phone."</td>
<td>".$onderwerp."</td>
<td>".$bericht."</td>
</tr>
</table>
</body>
</html>";


$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";


$headers .= 'From: <[email protected]>' . "\r\n";

mail($to,$subject,$message,$headers);

}
?>
{"type":"success","message":"Uw bericht is verstuurd!"}


Script.js

// Contact form 
        var form = $('.contact-form');
        form.submit(function() {
            $.post(form.attr('action'), $('.contact-form').serialize(), function(data) {
                form.prev().text(data.message).fadeIn().delay(3000).fadeOut();
            }, 'json');
			            return false;
			
			
        });




$('.contact-form').trigger("reset");

Dit al geprobeerd?

Trouwens, als je mail-functie mislukt schotel je gebruikers wel een foute aanname voor dat de mail verstuurd is. Misschien handig om ook dat even op te vangen.
Je zou het formulier ook kunnen verbergen als e.e.a. succesvol verzonden is?

Reageren