ReCaptcha

Fermé
Antho_690 Messages postés 13 Date d'inscription mardi 23 juin 2020 Statut Membre Dernière intervention 30 juin 2020 - Modifié le 26 juin 2020 à 11:33
Antho_690 Messages postés 13 Date d'inscription mardi 23 juin 2020 Statut Membre Dernière intervention 30 juin 2020 - 29 juin 2020 à 12:08
Bonjour,

J'ai rajouté un captcha sur mon site mais je ne sais pas comment faire pour l'assigner pour que l'envoie de mail échoue si le captcha n'est pas remplis. J'ai mon formulaire de contact en html et mon envoie de formulaire à une adresse mail en php. Mon captcha est à la fin de mon code html.

Voici mon formulaire de contact en html :

<form id="contact-form" name="contact-form" method="POST" style="font-family:cuprum;">

                <div class="row">
                    <div class="col-md-6">
                        <div class="md-form mb-0">
                            <input type=$text id="name" name="name" class="form-control">
                            <label for=$name class="" style="color: #FFFF">Votre nom</label>
                        </div>
                    </div>

                    <div class="col-md-6">
                        <div class="md-form mb-0">
                            <input type=$text id="email" name="email" class="form-control">
                            <label for=$email class="" style="color: #FFFFFF">Email</label>
                        </div>
                    </div>

                </div>
                <div class="row">
                    <div class="col-md-12">
                        <div class="md-form mb-0">
                            <input type=$text id="subject" name="subject" class="form-control">
                            <label for=$subject class="" style="color: #FFFFFF">Sujet</label>
                        </div>
                    </div>
                </div>
                <div class="row">
                  <div class="col-md-12">
                      <div class="md-form">
                        <textarea type="text" id="message" name="message" rows="2" class="form-control md-textarea"></textarea>
                        <label for= $message style="color: #FFFFFF">Votre message</label>
                      </div>
                 </div>
              </div>


            </form>

            <div class="text-center text-md-left">
                <a class="btn btn-primary" onclick="document.getElementById('contact-form').submit();" style="color: #FFFFFF">Envoyer </a> </div>
                <div style="align-content: right;" class="g-recaptcha" data-sitekey="6LcePAATAAAAAGPRWgx90814DTjgt5sXnNbV5WaW"></div>
                <script src='https://www.google.com/recaptcha/api.js'></script>
            <div class="status"></div>


Et voici mon envoie de mail en php :

<?php

error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

//récupération PROPRE des variables AVANT de les utiliser
$name = !empty($_POST['name']) ? $_POST['name'] : NULL;
$email = !empty($_POST['email']) ? $_POST['email'] : NULL;
$subject = !empty($_POST['subject']) ? $_POST['subject'] : NULL;
$message= !empty($_POST['message']) ? $_POST['message'] : NULL;

//on envoi le mail que si le nom, l'email et le message sont complétés
if($name && $email && $message){
  $to = "anthooony57@gmail.com";
  $body = 'Nom : ' . $name . "   email : " .$email . "   sujet : " .$subject . "   message : " .$message;
  mail($to,$subject,$body);
}

?>

4 réponses

yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
27 juin 2020 à 08:58
bonjour,
reçois-tu
$_POST['g-recaptcha-response']
?
si oui, il faut le vérifier. si non, il y a un soucis dans ton html.
0
Antho_690 Messages postés 13 Date d'inscription mardi 23 juin 2020 Statut Membre Dernière intervention 30 juin 2020
29 juin 2020 à 09:24
Je débute alors je sais juste que mon captcha fonctionne très bien seul de son côté mais je n'arrive pas à l'intégrer dans le formulaire
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471 > Antho_690 Messages postés 13 Date d'inscription mardi 23 juin 2020 Statut Membre Dernière intervention 30 juin 2020
29 juin 2020 à 11:16
ajoute
print_r($_POST);
, et montre le résultat.
0
Antho_690 Messages postés 13 Date d'inscription mardi 23 juin 2020 Statut Membre Dernière intervention 30 juin 2020
29 juin 2020 à 11:19
En fait je viens de me rendre compte que je peux envoyer le formulaire même avec aucune case remplis, mon php est faux :/ . Donc il faut que je trouve comment faire pour mettre comme des cases obligatoire dans le formulaire et faire passer le captcha comme case obligatoire aussi
0
Terdef Messages postés 985 Date d'inscription mardi 20 mai 2003 Statut Contributeur sécurité Dernière intervention 5 août 2020 132
29 juin 2020 à 12:05
Bonjour,

Hum...

reCaptcha

Jeter tous ses visiteurs dans le tracking de Google.

Cherchez un captcha de type "Captcha à trier", installé sur votre serveur et 100% personnel.

Cordialement,
0
Antho_690 Messages postés 13 Date d'inscription mardi 23 juin 2020 Statut Membre Dernière intervention 30 juin 2020
29 juin 2020 à 12:08
Bonjour,

d'accord, merci beaucoup pour votre réponse
0