web-dev-qa-db-fra.com

Formulaire de contact HTML simple avec Captcha?

Je recherche un HTML simple pour un formulaire de contact qui a ReCaptcha ou un certain type de fonctionnalités anti-spam. J'ai essayé plusieurs tutoriels mais ils sont tous compliqués et je ne peux pas en faire fonctionner. Tout ce dont j'ai besoin est un champ Nom, E-mail et Message (ainsi que le bouton ReCaptcha et soumettre). Est-ce que quelqu'un sait où trouver un simple formulaire de contact HTML?

10
5AMWE5T

Si vous avez du mal à implémenter recaptcha, optez pour

$a=Rand(2,9); // this will get a number between 2 and 9
$b=Rand(2,9); // this will also get a number between 2 and 9. You can change this according to your wish

$c=$a+$b;

Sur la page php, affichez

echo $a."+".$b."="<input type="text" name="recaptcha" />

et vérifiez si la valeur de la zone de texte est égale à $ c.

C'est le type de recaptcha le plus simple que vous pouvez implémenter pour empêcher les bots.

10
Professor

Essayez ce petit script: vous pouvez facilement l'utiliser dans les forums comme

<img src="tools/showCaptcha.php" />
<input type="text" name="captcha"/>

et il stockera la valeur captcha dans un exemple de variable de session

if ($_POST["captcha"] == $_SESSION['captcha']) { ... } else { ... }
4
user2533777

Étape 1

  • Vous avez besoin de code pour générer un captcha web de représentation d'image de police graphique. vous devez avoir bibliothèque Gd pour générer l'image de police.

    <?php
        session_start();
        $RandomStr = md5(microtime());
        $ResultStr = substr($RandomStr,0,5);
        $NewImage =imagecreatefromjpeg("bgimage.jpg");
    
        $LineColor = imagecolorallocate($NewImage,233,239,239);
        $TextColor = imagecolorallocate($NewImage, 255, 255, 255);
        imageline($NewImage,1,1,40,40,$LineColor);
        imageline($NewImage,1,100,60,0,$LineColor);
    
        $font = imageloadfont("font.gdf");
        imagestring ($NewImage, $font, 5, 5, $ResultStr, $TextColor ); 
        $_SESSION['originalkey'] = $ResultStr;  //store the original coderesult in session variable
    
        header("Content-type: image/jpeg");
        imagejpeg($NewImage);
    ?>
    

    Étape 2

  • Maintenant, votre formulaire pour appeler captcha.

    <form action="submit.php" method="post" name="form1">
        Name:
        <input type="text" name="name" value="" /> <br />
        Email Address:
        <input type="text" name="email" value="" /> <br />     
        Message:
        <textarea name="message" cols="30" rows="6"></textarea> <br />
        <img src="php_captcha.php" />
        <input name="captcha" type="text" id="captcha" size="15" /> <br />
    
        <input type="submit" name="submit" value="Submit" />
        <input type="reset" name="reset" value="clear"/>
    </form>
    

Étape 3

  • Maintenant, c'est la dernière étape pour soumettre une validation de capcha de vérification de l'heure. Utilisation des informations de session.

    <?php
          $originalkey = substr($_SESSION['originalkey'],0,5);  //session of captcha
          $captcha = $_REQUEST['captchacode'];
          if($captcha!=$originalkey){
            print_error("<b> Captcha does not match, Go back and try again.</b>");
          }
    ?>
    

J'espère que cela vous aidera!

3
Jay Patel

Visitez ici cela pourrait résoudre votre problème.Sa forme simple avec explication.

http://www.html-form-guide.com/contact-form/html-contact-form-captcha.html

1
Junaid