Site internet
patxiro
Messages postés
58
Statut
Membre
-
kormo Messages postés 465 Statut Membre -
kormo Messages postés 465 Statut Membre -
Bonjour,
J'ai un site interne où mes clients peuvent effectuer des demandes de devis.
Je souhaite instaurer dans mon onglet " devis " la case composé de 4 lettres et/ou chiffres qui se régénèrent toutes les minutes pour ainsi etre sur qu'il s'aggit un remplissage manuel car je suis infesté de mail me proposant du viagra et autres bétises....
Pat.
J'ai un site interne où mes clients peuvent effectuer des demandes de devis.
Je souhaite instaurer dans mon onglet " devis " la case composé de 4 lettres et/ou chiffres qui se régénèrent toutes les minutes pour ainsi etre sur qu'il s'aggit un remplissage manuel car je suis infesté de mail me proposant du viagra et autres bétises....
Pat.
A voir également:
- Site internet
- Site de telechargement - Accueil - Outils
- Site x - Guide
- Site comme coco - Accueil - Réseaux sociaux
- Quel site remplace coco - Accueil - Réseaux sociaux
- Site pour partager des photos - Guide
4 réponses
Les avis sont partagés sur l'efficacité de ce système, moi je n'en n'ai pas (d'avis).
Tu peux déja approcher le problème en cherchant les mots "captcha" ou "confirmation visuelle".
C'est vrai que c'est pénible les bots ! :-(
Tu peux déja approcher le problème en cherchant les mots "captcha" ou "confirmation visuelle".
C'est vrai que c'est pénible les bots ! :-(
Bonsoir,
Tu peux essayer ce captcha : http://www.captcha.fr/
Je l'utilise sur mon site et les résultats sont très satisfaisants.
Tu peux essayer ce captcha : http://www.captcha.fr/
Je l'utilise sur mon site et les résultats sont très satisfaisants.
C'est assez difficile à expliquer dans un forum, je veux bien te mettre le script de mon livre d'or auquel j'ai intégré le captcha, mais je ne sais pas si ça t'aidera beaucoup :
<?php
session_start();
include("compteur.php");
require("private/config.php");
if ($maint == 1)
{
header("location: index.php");
}
include_once("private/fonctions.php");
require("private/config.css");
empty($_POST['n']) ? $n = '' : $n = $_POST['n'];
empty($_POST['c']) ? $c = '' : $c = $_POST['c'];
empty($_POST['code']) ? $code = '' : $code = $_POST['code'];
empty($_GET['erreur']) ? $erreur = '' : $erreur = $_GET['erreur'];
// #####################################################################################
// =============================================================================
// Comment'R 1.0 - (c) 2000 Thierry Arsicaud (deltascripts@ifrance.com)
// =============================================================================
//
// *************************************************************************************
// Ce script affiche la liste des commentaires postés par les utilisateurs par groupes
// ou pages de N commentaires (nombre à définir ci-dessous). Il affiche également un
// formulaire offrant la possibilité d'envoyer de nouveaux commentaires.
//
// Configuration de paramètres d'affichage des deux tableaux utilisés pour
// la mise en forme de la page :
// Tableau A (1 colonne, 2n+1 lignes) : le tableau comprend 1 ligne d'entête, et 2n lignes
// permettant d'afficher alternativement le nom de l'auteur et le texte du commentaire
// Tableau B : affichage du formulaire permettant de poster un nouveau commentaire
// (1 colonne, 2 lignes dont 1 ligne d'entête)
//
// Modifiez les paramètres ci-dessous en n'oubliant pas de refermer
// les guillemets et le point virgule
// *************************************************************************************
// === Paramètres d'affichage du TableauA (affichage des commentaires déjà postés) ===
$largeurTableauxA="80%"; // Largeur du TableauA
$couleurBordTableauA="#bbbbbb"; // Couleur de la bordure du TableauA
$couleurFondEnteteTableauA="#D3D3D3"; // Couleur de fond de la ligne d'entête du tableauA
$policeEnteteTableauA="verdana"; // Police utilisée dans la ligne d'entête du tableauA
$couleurPoliceEnteteTableauA="#000000"; // Couleur de la police utilisée dans la ligne d'entête du tableauA
$couleurFondLigneNomAuteurTableauA="#F6F6F6"; // Couleur de fond des lignes "Nom de l'auteur"
$policeLignesNomAuteurTableauA="verdana"; // Police utilisée dans les lignes "Nom de l'auteur"
$couleurPoliceLignesNomAuteurTableauA="#000000"; // Couleur de la police utilisée dans les lignes "Nom de l'auteur"
$couleurFondLigneCommentaireTableauA="#ffffff"; // Couleur de fond des lignes "Commentaire"
$policeLignesCommentairesTableauA="times"; // Police utilisée dans les lignes "Commentaire"
$couleurPoliceLignesCommentairesTableauA="#000000"; // Couleur de la police utilisée dans les lignes "Commentaire"
$NombreComParPage=10; // Nombre maximum de commentaires à afficher dans le tableau (par page)
$NombreMaxPages=20; // Nombre maximum de pages de commentaires susceptibles d'être affichées
// === Paramètres d'affichage du TableauB (affichage du formulaire permettant d'ajouter un nouveau commentaire) ===
$largeurTableauxB="80%"; // Largeur du TableauB
$couleurBordTableauB="#bbbbbb"; // Couleur de la bordure du TableauB
$couleurFondEnteteTableauB="#D3D3D3"; // Couleur de fond de la ligne d'entête du tableauB
$policeEnteteTableauB="verdana"; // Police utilisée dans la ligne d'entête du tableauB
$couleurPoliceEnteteTableauB="#000000"; // Couleur de la police utilisée dans la ligne d'entête du tableauB
$couleurFondFormulaireTableauB="#F6F6F6"; // Couleur de fond de la cellule affichant le formulaire
$policeFondFormulaireTableauB="verdana"; // Police utilisée dans la cellule affichant le formulaire
$couleurPoliceFondFormulaireTableauB="#000000"; // Couleur de la police utilisée dans la cellule affichant le formulaire
// === Paramètres destinés au contrôle des messages postés (dispositif "anti-piratage") ===
$longueurMaxCommentaires="10000"; // Nombre maximum de caractères pouvant être postés dans un commentaire
$longueurMaxMots="50"; // Nombre maximum de caractères par "mot" (ce dispositif permet d'empêcher une éventuelle augmentation incontrôlée de la largeur des tableaux)
// #####################################################################################
// #####################################################################################
// ****************************************************************************************
// Vérification du nombre de caractères envoyés dans le commentaire éventuellement posté.
// (certains utilisateurs mal intentionnés pourraient être tentés d'envoyer des commentaires
// comportant un très grand nombre de caractères, dans le but de ralentir le temps
// d'affichage du livre d'or)
// ****************************************************************************************
if((@ strlen($n)>$longueurMaxCommentaires) or (@ strlen($c)>$longueurMaxCommentaires)) {
print("Désolé, la taille maximale des commentaires pouvant être postés est limitée à $longueurMaxCommentaires caractères.<br>\n");
print("<a href=\"livredor.php\">Retour au Livre d'Or</a>\n");
exit;
}
// #####################################################################################
?>
<!- inserez la première partie de votre code html ici ->
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<title>Livre d'or</title>
<meta name="Description" content="description du site">
<meta name="Keywords" content="mots clé">
<meta name="Author" content="votre nom">
<meta name="lang" content="FR">
<meta name="ROBOTS" content="INDEX">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="icon" type="image/x-icon" href="favicon.ico">
<base target="_top">
</head>
<body>
<A name="haut"></A>
<!-- ENTETE DE PAGE -->
<div><?php
include("header.php");
?>
<h2 class="titre2">Livre d'Or</h2></div>
<br clear="all">
</div>
<!-- DÉBUT DE PAGE -->
<!-- Menu -->
<div id="menu" class="fond-menu">
<?php
include("menu.php");
?>
</div>
<!-- Contenu de la page -->
<div id="infos" class="fond-cadre">
<h3 align="left" class="titre3">Livre d'Or<HR size="1" noshade class="hr"></h3>
<br>
<?php
// #####################################################################################
// ***********************************************************************************
// Création du fichier livre.dat s'il n'existe pas
// ***********************************************************************************
if(!file_exists("private/livre/livre.dat")) {
$idFicLivre=fopen("private/livre/livre.dat","w+");
fputs($idFicLivre,"Fichier Index. Ne pas éditer !\n");
fclose($idFicLivre);
}
if(!isset($c)) $c="";
if(!isset($n)) $n="";
if(!isset($p)) $p="";
if(!isset($code)) $code="";
if(!isset($erreur)) $erreur="";
// ***********************************************************************************
// Définition de la fonction coupeMotsLongs($chaine,$ncaracteres) destinée à découper
// mots contenants plus de $ncaracteres caractères.
// (certains utilisateurs envoient parfois des textes contenant des mots très long,
// ce qui a pour effet d'altérer la structure d'affichage des tableaux)
// ***********************************************************************************
function coupeMotsLongs($chaine,$ncaracteres) {
$chaineRes=$chaine;
while(ereg("([^ ]{".$ncaracteres."})[^ ]",$chaineRes,$corres)) {
$partRep=$corres[1];
$chaineRes=ereg_replace($partRep,$partRep." <br> ",$chaineRes);
}
return($chaineRes);
}
// ***********************************************************************************
// Nettoyage et enregistrement des nouveaux commentaires envoyés lors de l'appel du script
// ***********************************************************************************
if ($antispam == "1"){
if ($_SESSION['cryptcode'] == md5(strtoupper($_POST['code'])) and (!$_SESSION['cryptreload']))
{
if ($c and $n) {
// détermination de la date
$tdate=getdate();
$jour=sprintf("%02.2d",$tdate["mday"])."/".sprintf("%02.2d",$tdate["mon"])."/".$tdate["year"];
$heure=sprintf("%02.2d",$tdate["hours"])."H".sprintf("%02.2d",$tdate["minutes"]);
$d=$jour." à ".$heure;
// nettoyage du nom
$n=htmlentities($n);
$n=stripslashes($n);
$n=trim($n);
// nettoyage du commentaire
$c=htmlentities($c);
$c=str_replace(chr(10)," <br> ",$c);
$c=str_replace(chr(13),"",$c);
$c=stripslashes($c);
$c=trim($c);
$idFicLivreCom=fopen("private/livre/livre.dat","a+");
fputs($idFicLivreCom,$n); // 1ère ligne
fputs($idFicLivreCom,"|"); //
fputs($idFicLivreCom,$d."|\n"); //
fputs($idFicLivreCom,$c."\n"); // 2ème ligne
fclose($idFicLivreCom);
unset($_SESSION['cryptreload']);
}
}
else {
$erreur = "1";
$_SESSION['cryptreload']='OUI';
}
}
if ($antispam == "2"){
if ($c and $n) {
// détermination de la date
$tdate=getdate();
$jour=sprintf("%02.2d",$tdate["mday"])."/".sprintf("%02.2d",$tdate["mon"])."/".$tdate["year"];
$heure=sprintf("%02.2d",$tdate["hours"])."H".sprintf("%02.2d",$tdate["minutes"]);
$d=$jour." à ".$heure;
// nettoyage du nom
$n=htmlentities($n);
$n=stripslashes($n);
$n=trim($n);
// nettoyage du commentaire
$c=htmlentities($c);
$c=str_replace(chr(10)," <br> ",$c);
$c=str_replace(chr(13),"",$c);
$c=stripslashes($c);
$c=trim($c);
$idFicLivreCom=fopen("private/livre/livre.dat","a+");
fputs($idFicLivreCom,$n); // 1ère ligne
fputs($idFicLivreCom,"|"); //
fputs($idFicLivreCom,$d."|\n"); //
fputs($idFicLivreCom,$c."\n"); // 2ème ligne
fclose($idFicLivreCom);
}
}
// ***********************************************************************************
// Lecture des messages déjà postés dans le livre, et stockage des données
// dans les tableaux $nom et $commentaire
// ***********************************************************************************
$TabLivre=file("private/livre/livre.dat");
$nLignesTabLivre=count($TabLivre)-1;
$nCommentaires=$nLignesTabLivre/2;
for($compt=1;$compt<=$nCommentaires;$compt++) {
$nom[$compt]=trim(stripslashes(strtok($TabLivre[($compt*2)-1],"|")));
$date[$compt]=trim(stripslashes(strtok("|")));
$commentaire[$compt]=trim(stripslashes($TabLivre[($compt*2)]));
}
// ***********************************************************************************
// Affichage d'un message de remerciement au cas ou un commentaire a été envoyé en même
// temps que l'appel du script
// ***********************************************************************************
if($n and $c and $erreur!="1") {
print("<table align=\"center\" width=\"$largeurTableauxA\" border=\"1\"> \n");
print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\" height=\"30\"> \n");
print("<center> \n");
print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"> \n");
print("<b>Merci pour votre participation !</b> \n");
print("</font> \n");
print("</center> \n");
print("</td></tr> \n");
print("</table> \n");
print("<br> \n");
}
if ($n != "" and $c != "" and $erreur=="1" and $antispam =="1")
{
print("<table align=\"center\" width=\"$largeurTableauxA\" border=\"1\"> \n");
print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\" height=\"30\"> \n");
print("<center> \n");
print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"> \n");
print("<b>Erreur, le code est incorrect !</b> \n");
print("</font> \n");
print("</center> \n");
print("</td></tr> \n");
print("</table> \n");
print("<br> \n");
}
// ***********************************************************************************
// Affichage des commentaires déjà postés dans un tableau
// ***********************************************************************************
if(!$p) {
$p=1; // $p représente le numéro de la page de commentaire à afficher : par défaut, $p=1
}
if($nCommentaires>0) {
print("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"$largeurTableauxA\" align=\"center\" bgcolor=\"$couleurBordTableauA\"> \n");
print("<tr><td> \n");
print("<table border=\"0\" width=\"100%\" cellspacing=\"1\" align=\"center\" cellpadding=\"5\"> \n");
print("<tr> \n");
print("<td bgcolor=\"$couleurFondEnteteTableauA\" height=\"30\"> \n");
if($nCommentaires>$NombreComParPage) {
print("<center> \n");
print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
print("<b>pages</b> \n");
print("<b> \n");
for($a=1;$a<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1));$a++) {
if($a==$p) print("$a \n");
else print("<a href=\"livredor.php?p=$a\">$a</a> \n");
}
print("</b> \n");
print("</font> \n");
print("</center> \n");
}
print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
print("<center> \n");
print("<b><a href=\"#ajout\">ajouter un nouveau commentaire</a></b> <br> \n");
print("</center> \n");
print("</font> \n");
print("</td> \n");
print("</tr> \n");
for($compt=($nCommentaires-(($p-1)*$NombreComParPage));$compt>=max(1,($nCommentaires-($p*$NombreComParPage)+1));$compt--) {
print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\"> \n");
print("<table> \n");
print("<tr> \n");
print("<td width=\"10\"> </td> \n");
print("<td> \n");
print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"><b>".coupeMotsLongs($nom[$compt],$longueurMaxMots)."</b> a écrit, le ".$date[$compt]." :</font> \n");
print("</td> \n");
print("</tr> \n");
print("</table> \n");
print("</td></tr> \n");
print("<tr><td bgcolor=\"$couleurFondLigneCommentaireTableauA\"> \n");
print("<table> \n");
print("<tr> \n");
print("<td width=\"20\"> </td> \n");
print("<td> \n");
print("<font face=\"$policeLignesCommentairesTableauA\" color=\"$couleurPoliceLignesCommentairesTableauA\">".coupeMotsLongs($commentaire[$compt],$longueurMaxMots)."</font>\n");
print("</td> \n");
print("</tr> \n");
print("</table> \n");
print("</td></tr> \n");
}
if(($nCommentaires>$NombreComParPage) and $p<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1))) {
print("<tr> \n");
print("<td bgcolor=\"$couleurFondEnteteTableauA\" height=\"20\"> \n");
print("<center> \n");
print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
print("<b>pages</b> \n");
print("<b> \n");
for($a=1;$a<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1));$a++) {
if($a==$p) print("$a \n");
else print("<a href=\"livredor.php?p=$a\">$a</a> \n");
}
print("</b> \n");
print("</font> \n");
print("</center> \n");
print("</td> \n");
print("</tr> \n");
}
print("</table> \n");
print("</td></tr> \n");
print("</table> \n");
print("<br> \n");
}
// *********************************************************************************************
// Affichage d'un message d'avertissement au cas où aucun commentaire n'a été encore été envoyé
// *********************************************************************************************
if($nCommentaires<1) {
print("<table align=\"center\" width=\"$largeurTableauxA\" border=\"1\"> \n");
print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\" height=\"30\"> \n");
print("<center> \n");
print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"> \n");
print("<b>Le livre d'or ne comporte encore aucun commentaire.</b> \n");
print("</font> \n");
print("</center> \n");
print("</td></tr> \n");
print("</table> \n");
print("<br> \n");
}
// ***********************************************************************************
// Affichage du formulaire permettant de poster un nouveau commentaire
// ***********************************************************************************
print("<a name=\"ajout\"></a>");
print("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"$largeurTableauxB\" align=\"center\" bgcolor=\"$couleurBordTableauB\"> \n");
print("<tr><td> \n");
print("<table border=\"0\" width=\"100%\" cellspacing=\"1\" align=\"center\" cellpadding=\"5\"> \n");
print("<tr> \n");
print("<td bgcolor=\"$couleurFondEnteteTableauB\" height=\"30\"> \n");
print("<font face=\"$policeEnteteTableauB\" color=\"$couleurPoliceEnteteTableauB\" size=\"-1\"> \n");
if($nCommentaires>0) print("<b><center>Ajouter un nouveau commentaire :</center></b> \n");
else print("<b><center>Envoyer un premier commentaire :</center></b> \n");
print("</font> \n");
print("</td> \n");
print("</tr> \n");
if ($erreur=="1" and $antispam =="1")
{
print("<tr><td bgcolor=\"$couleurFondFormulaireTableauB\"> \n");
print("<form method=\"POST\" action=\"livredor.php\"> \n");
print("<center> \n");
print("<br> \n");
print("<font face=\"$policeFondFormulaireTableauB\" color=\"$couleurPoliceFondFormulaireTableauB\" size=\"-1\"> \n");
print("<b>Votre nom</b> : \n");
$n = stripslashes($n);
$n = htmlentities($n);
print("<input type=\"text\" name=\"n\" size=\"22\" value=\"$n\"> \n");
print("<br><br> \n");
$c = stripslashes($c);
$c = htmlentities($c);
print("<textarea rows=\"6\" name=\"c\" cols=\"40\" wrap=\"virtual\">$c</textarea> \n");
print("<br> \n");
print("<b>Code anti-spam : </b><img src='crypt/cryptographp.php' style='vertical-align: middle'> \n");
print("<br> \n");
print("<b>Recopier le code anti-spam : </b><input type='text' name='code' size=\"4\"> \n");
print("</font> \n");
print("<input type=\"submit\" value=\"Envoyer !\" name=\"B1\" class='bouton'> \n");
print("</form> \n");
print("</td></tr> \n");
print("</table> \n");
print("</td></tr> \n");
print("</table> \n");
}
else
{
print("<tr><td bgcolor=\"$couleurFondFormulaireTableauB\"> \n");
print("<form method=\"POST\" action=\"livredor.php\"> \n");
print("<center> \n");
print("<br> \n");
print("<font face=\"$policeFondFormulaireTableauB\" color=\"$couleurPoliceFondFormulaireTableauB\" size=\"-1\"> \n");
print("<b>Votre nom</b> : \n");
print("<input type=\"text\" name=\"n\" size=\"22\"> \n");
print("<br><br> \n");
print("<textarea rows=\"6\" name=\"c\" cols=\"40\" wrap=\"virtual\"></textarea> \n");
print("<br> \n");
if ($antispam == "1") {
print("<b>Code anti-spam : </b><img src='crypt/cryptographp.php' style='vertical-align: middle'> \n");
print("<br> \n");
print("<b>Recopier le code anti-spam : </b><input type='text' name='code' size=\"4\"> \n");
}
print("</font> \n");
print("<input type=\"submit\" value=\"Envoyer !\" name=\"B1\" class='bouton'> \n");
print("</form> \n");
print("</td></tr> \n");
print("</table> \n");
print("</td></tr> \n");
print("</table> \n");
}
// #####################################################################################
?>
<!- inserez la seconde partie de votre code html ici ->
<p align="center">Pas de propos injurieux, calomnieux, racistes, xénophobes, pédophiles ou haineux sur ce livre d'or.
<br />
Je me réserve le droit de supprimer les messages qui ne respecteraient pas cette règle.</p>
<p align="center"><a href="http://www.echodelta.net/scriptsphp/index.html" target="_blank">Livre d'Or créé avec Comment'R 1.0</a></p>
<?php
if ($antispam == "1") {
print("<br /> \n");
print("<p align='center'><a href='http://www.cryptographp.com' target='_blank'><img src='crypt/images/crypt.png' border='0' alt='Cryptographp'></a></p> \n");
}
?>
<!-- PIED DE PAGE -->
<?php
include("footer.php");
?>
</div>
<div id="pied">
<p> <br clear="all"></p>
</div>
</body>
</html>
Vas voir "javascript crypter adresse mail"