Bonjour à tous,
J'ai depuis pas mal de temps un problème sur mon site, le formulaire de contact ne fonctionne pas.
En effet, il s'agit d'un modèle que j'ai téléchargé d'internet et qui avait une vérification javascript et après php.
Pour plus de sécurité j'ai voulu rajouter le recaptcha de Google et la impossible je bloque je suis incapable de le faire fonctionner.
D'après ce que j'ai compris, il manque dans la requête Ajax du Javascript les paramètre du recaptcha mais malgré toutes mes tentatives ... impossible.
J'ai constamment un message du script PHP, qui me dit que mon recaptcha n'est pas coché.
Et depuis peu mon bouton reset ne fait plus rien du tout !?
Je vous montre tous ça:
D'abord mon formulaire
Code :
- <!-- form -->
- <form action="" method="post" id="contactForm" name="contactForm">
- <fieldset>
- <div>
- <label for="contactName">Nom <span class="required">*</span></label>
- <input required class="plume" type="text" value="" size="50" maxlength="150" id="contactName" name="contactName" placeholder=" Veuillez entrer votre pseudo">
- </div>
- <div>
- <label for="contactEmail">Email <span class="required">*</span></label>
- <input required class="plume" type="email" value="" size="50" maxlength="300" id="contactEmail" name="contactEmail" placeholder=" Veuillez indiquer votre mail">
- </div>
- <div>
- <label for="contactSubject">Sujet <span class="required">*</span></label>
- <input required class="plume" type="text" value="" size="50" maxlength="150" id="contactSubject" name="contactSubject" placeholder=" Veuillez indiquer le sujet de votre message">
- </div>
- <div>
- <label for="contactMessage">Message <span class="required">*</span></label>
- <textarea required class="plume" cols="50" rows="15" id="contactMessage" name="contactMessage" maxlength="5000" placeholder=" Veuillez écrire ici votre message"></textarea>
- </div>
- <div class="center">
- <label for="contactMessage"></label>
- <div class="g-recaptcha" data-sitekey="Clé Publique">
- </div>
- </div>
- </br>
- <div class="divbotton">
- <label for="contactMessage"></label>
- <button class="submit cancel" type="reset">Annuler</button> <button class="submit accept">Envoyer</button>
- <span id="image-loader">
- <img alt="" src="../images/loader.gif">
- </span>
- </div>
- </fieldset>
- </form> <!-- Form End -->
|
Ensuite mon Javascript:
Code :
- $('form#contactForm button.submit').click(function() {
- $('#image-loader').fadeIn();
- var contactName = $('#contactForm #contactName').val();
- var contactEmail = $('#contactForm #contactEmail').val();
- var contactSubject = $('#contactForm #contactSubject').val();
- var contactMessage = $('#contactForm #contactMessage').val();
- var g_recaptcha_response = $('#contactForm #g_recaptcha_response').val();
-
- var data = {contactName:contactName ,
- contactEmail:contactEmail ,
- contactSubject:contactSubject ,
- contactMessage:contactMessage ,
- g_recaptcha_response:g_recaptcha_response};
- $.ajax({
- type: "POST",
- url: "inc/sendEmail.php",
- data: data,
- success: function(msg) {
- // Message was sent
- if (msg == 'OK') {
- $('#image-loader').fadeOut();
- $('#message-warning').hide();
- $('#contactForm').fadeOut();
- $('#message-success').fadeIn();
- }
- // There was an error
- else {
- $('#image-loader').fadeOut();
- $('#message-warning').html(msg);
- $('#message-warning').fadeIn();
- }
- }
- });
- return false;
- });
|
et enfin mon php:
Code :
- <?php
- if ($_SERVER['REQUEST_METHOD'] === 'POST'){
- $key = 'Clé Privé';
- $response = $_POST['g_recaptcha_response'];
- $ip = $_SERVER['REMOTE_ADDR'];
- $gapi ='https://www.google.com/recaptcha/api/siteverify?secret='.$key.'&response='.$response.'&remoteip='.$ip;
- $json = json_decode(file_get_contents($gapi), true);
- if (!$json['success']) {
- foreach($json['error-codes'] as $error)
- {
- echo "<p style=\"text-align:center;padding-top:5%;font-size:18px; color:#048B9A;\">Vous n'avez pas cliquez sur :</p><p style=\"text-align:center;padding-top:5%;\"><img src='.../Img/Article/fr-recaptcha.PNG' alt='recaptcha.png' title='Vous avez oublié de cliquer lá'/></p>";
- }
- } else{
- // Replace this with your own email address
- $siteOwnersEmail = '------------';
- if($_POST) {
- $name = trim(stripslashes($_POST['contactName']));
- $email = trim(stripslashes($_POST['contactEmail']));
- $subject = trim(stripslashes($_POST['contactSubject']));
- $contact_message = trim(stripslashes($_POST['contactMessage']));
- // Check Name
- if (strlen($name) < 2) {
- $error['name'] = "Veuillez saisir votre nom.";
- }
- // Check Email
- if (!preg_match('/^[a-z0-9&\'\.\-_\+]+@[a-z0-9\-]+\.([a-z0-9\-]+\.)*+[a-z]{2}/is', $email)) {
- $error['email'] = "Veuillez saisir adresse éléctronique valide.";
- }
- // Check Message
- if (strlen($contact_message) < 15) {
- $error['message'] = "Veuillez saisir votre message. Il doit avoir au moins 15 caratères.";
- }
- // Subject
- if ($subject == '') { $subject = "Contact Form Submission"; }
- // Set Message
- $message .= "Email from: " . $name . "<br />";
- $message .= "Email address: " . $email . "<br />";
- $message .= "Message: <br />";
- $message .= $contact_message;
- $message .= "<br /> ----- <br /> Ce courrier électronique a été envoyer depuis votre site web<br />";
- // Set From: header
- $from = $name . " <" . $email . ">";
- // Email Headers
- $headers = "From: " . $from . "\r\n";
- $headers .= "Reply-To: ". $email . "\r\n";
- $headers .= "MIME-Version: 1.0\r\n";
- $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
- if (!$error) {
- ini_set("sendmail_from", $siteOwnersEmail); // for windows server
- $mail = mail($siteOwnersEmail, $subject, $message, $headers);
- if ($mail) { echo "OK"; }
- else { echo "Un problème est survenu lors de l'envoi du mail. Veuillez réessayer."; }
- } # end if - no validation error
- else {
- $response = (isset($error['name'])) ? $error['name'] . "<br /> \n" : null;
- $response .= (isset($error['email'])) ? $error['email'] . "<br /> \n" : null;
- $response .= (isset($error['message'])) ? $error['message'] . "<br />" : null;
- echo $response;
- } # end if - there was a validation error
- }
- }
- }
- ?>
|
J’espère sincèrement que quelqu'un pourra m'aider car je suis une bille en php et javascript et je ne sais plus quoi faire
Je remercie d'avance, les gens qui auront la patience de se pencher sur mon souci.
Message édité par Aton2323 le 08-07-2017 à 22:56:51
---------------
Xpredator white edition