formulaire avec contrôle anti-spam

  • Auteur de la discussion thhu
  • Date de début

thhu

Habitué
Bonjour,

J'ai un formulaire dans lequel je souhaiterais inclure un code de vérification anti-spam.

La page de saisie du commentaire s'ouvre, avec des champs à remplir (adr email, nom, commentaire), et s'affiche un code numérique qui n'est autre que l'heure, minute, seconde ($heure_x) du système au format uniquement numérique sur 8 caractères.
Une case se trouve à côté où la personne doit recopier la valeur de $heure_x.
Si la saisie est = à $heure_x, il y a inscription du formulaire ds la base (add.php), sinon, il y a boucle sur le formulaire.

Mon problème est que je n'arrive pas à faire la vérification ......

Mon formulaire :

[cpp]<font color="green">
<div class="apercu" name="resultat" id="resultat" value= "resultat" style="width: 894; height: 41"></div></font>
<form method="POST" action="add.php" value="envoyer" name="soumettre"> <p>
<u><b>Votre Nom :</b></u> <textarea cols="40" name="nom" id="Nom" rows="1"></textarea><br>
<u><b>Adresse mail :</b></u> <textarea cols="40" name="mail" id="Mail" rows="1"></textarea><p>
<center><u><b>Votre commentaire :</b></u><p>
<textarea cols="65" name="message" id="Message" rows="8" wrap="VIRTUAL" accesskey="c" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);" onchange="storeCaret(this);" ></textarea><p>
<?php
$heure_x = date("His");echo "Code ='$heure_x' ";
?>
<textarea cols="8" name="heure_x" id="heure_x" rows="1" ></textarea><p>
<input type="button" value="Aperçu" onclick="TAinsert;OpenPreview();" style="text-decoration: none">
<input type="submit" name="preview" value="Valider">
<input type="reset" value="Effacer">
<!-- permet de passer id_reco au script suivant (add.php) -->
<input type="hidden" name="id_reco" id="id_reco" value="<?php echo $_GET['id_reco']; ?>"><p>
<a href="menu.php"><img src="annuler.JPG" border="0"></a>
</form>[/cpp]

Merci pour votre aide .....
 

dartyduck

Grand Meuble Suprême
pourquoi s'embeter avec ça ?? les robots ne savent pas encore lire les images donc perso je me suis pas emmerdé avec des scripts lourds, j'ai simplement fait et depuis plus aucun spam de robots ;)
 

zeb

Modérateur
DD, la question n'est pas "Comment faire autrement ?"
Dans la cat' PROGRAMMATION, merci d'apporter une réponse de PROGRAMMEUR.

Je ne censure pas ta réponse, au contraire, avoir d'autres avis est ce qu'un forum apporte de plus enrichissant. :o
 

guillaumech

Expert
Si on laisse aux utilisateurs le soin de rentrer une phrase ou un mot précis , indiqué sur la page, le robot passera toujours ?
>exemple :
entrez anti-spam ci-contre : [champ]
si tu récupères anti-spam dans le champ, c'est ok ...
 

thhu

Habitué
OKKKK !!!!
J'ai tout changé, et je tente d'adapter "cryptograph 1.4".
Mais j'ai quelques difficultés.

Au moment de la vérification du code, si c'est bon, je veux exécuter "add.php". Mais si c'est pas le bon code, msg d'erreur.

Et là, j'y arrive pas ........
J'ai ce msg d'erreur : Parse error: syntax error, unexpected $end in /mnt/165/sda/f/a/gnealogie/val-ville/reconstitution/visiteur/verifier.php on line 9

Voici mon code :

[cpp]<?php
$cryptinstall="crypt/cryptographp.fct.php";
include $cryptinstall;

if (chk_crypt($_POST['code']))
header("Location: add.php);
else echo '<a><font color='#FF0000'>=> Erreur, le code est incorrect</font></a>' ;

?>[/cpp]

Tu peux m'aider ??? Merci !!!!
 

KangOl

Grand Maître

ca c'est faux :
 

guillaumech

Expert
Mon ancien message n'est pas certain, c'est pour ça que j'ai mis un point d'interrogation, mais je pense que ça peux marcher. J'attend donc des commentaires.
Pour ton code, je n'ai que qq bases en php, mais je comprend pas tout (regarder les commentaires) :
[cpp]
<?php
$cryptinstall="crypt/cryptographp.fct.php";
include $cryptinstall;

if (chk_crypt($_POST['code'])) // il faut que chk_crypt($_POST['code']) soit égal à 1 pour que ton header se face, c'est le cas ? De plus, que fait ta fonction chk_crypt ? :( Yen a t'il vraiment besoin ?
header("Location: add.php);
else echo '<a><font color='#FF0000'>=> Erreur, le code est incorrect</font></a>' ; // Pourquoi <a> ? Est-ce accepté par les normes xhtml/css ? La balise attend un lien href="....", si aucun lien n'est necessaire, à ne pas mettre. Si tu souhaitais souligner le texte au survole de la souris (l'interêt vu qu'il n'y aura pas d'action ?), met alors <a href="javascript;:"> (a vérifier si c'est trés correct aussi ...)
?>
[/cpp]
Pour ton erreur : Parse error: syntax error, unexpected $end
Regarder les guillemets, et les parenthèses, dans tout le code ...
 

thhu

Habitué
Mervci guillaumech ! J'ai réussi à pousser un peu plus loin.
Je ferme ce post et j'en ouvrirais d'autres au cas où !!!! :hello:
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 128
Messages
6 717 845
Membres
1 586 373
Dernier membre
https://forum.tomshardwar
Partager cette page
Haut