Hé les gars je crée un formulaire d'inscription à la newsletter et en essayant de le soumettre avec AJAX ..Php formulaire Ajax ne soumet pas
Voici ma forme:
<div id="form-content">
<form method="POST" id="news-form" name="newsletter">
<div class="bd-input-2 form-group">
<input type="email" name="newsletter_email" placeholder="Enter your email address" required />
</div>
<div class="form-group">
<button type="submit" name="newsletter">Submit</button>
</div>
</form>
</div>
Et celui-ci est mon fichier JS dans la même page que la forme:
$('#news-form').submit(function(e){
e.preventDefault();
$.ajax({
url: 'newsletter-submit.php',
type: 'POST',
data: $(this).serialize()
})
.done(function(data){
$('#form-content').fadeOut('slow', function(){
$('#form-content').fadeIn('slow').html(data);
console.log(data);
});
})
.fail(function(){
alert('Ajax Submit Failed ...');
});
});
sur rien de la console affiche même pas une erreur juste une ligne vide.
Et mon dossier bulletin-submit.php:
<?php
if(isset($_POST['newsletter'])){
$newsletter_email = filter_var($_POST['newsletter_email'],FILTER_VALIDATE_EMAIL);
if(filter_var($newsletter_email, FILTER_VALIDATE_EMAIL)){
$newsletter_email = filter_var($newsletter_email, FILTER_VALIDATE_EMAIL);
$em_check = sqlsrv_query($con, "SELECT email FROM newsletter_signups WHERE email='$newsletter_email'",array(), array("Scrollable"=>"buffered"));
$num_rows = sqlsrv_num_rows($em_check);
if($num_rows > 0){
echo "<br/><p style='color: #fff;'>Email exist in our newsletter list.</p>";
}else{
$query = "INSERT INTO newsletter_signups (email) VALUES ('{$newsletter_email}')";
$insert_newsletter_query = sqlsrv_query($con,$query);
echo '<br/><p style="color: green;">Thank you for sign up in our newsletter</p>';
}
}
}
?>
Mais si j'ajoute un code après balises phpHello world
qui est par exemple affiché après la présentation.
Mon code php travaillait avant le fichier AJAX
[Avez-vous regardé la requête/réponse AJAX dans les outils de développement du navigateur? Avez-vous inclus la bibliothèque jQuery dans le projet? Y a-t-il des erreurs signalées? Courez-vous ceci sur un serveur Web?] (Http://jayblanchard.net/basics_of_jquery_ajax.html) –
Votre champ de saisie s'appelle 'newsletter_email' et dans votre php vous vérifiez' isset ($ _ POST ['newsletter' ]) ' – emed
@JayBlanchard Oui je l'exécute sur le serveur Web Windows R2012 J'ai la bibliothèque de Jquery et je n'obtiens aucune erreur – Maria