Bonjour a vous,
voici mon tit souci, je suis l'admin d'un site de rencontre http://www.ata-rencontre.com et je n'arrete pas de me faire spammer de message de personne d'afrique et d'autre aussi mais qui passe par des serveur proxy si cela s'appelle bien comme cela.
Donc j'ai trois solutions en tete:
1) mettre un captcha mais comment l'intégrer dans ma page, que cela vérifie le captcha puis si il est correcte envoi par la suite le message.

2) ou sinon mettre un captcha avec le tit code qui va bien pour envoyer son message, mais je ne n'arrive pas du tout l'intégrer car je ne connais pas la manipe "if" "else" .

3) ou sinon que les personnes ne puisse pas envoyer deux fois le meme messages de suite mais voyant tous les jours comment il fonctionne je suis pas sur que ca les calme.

Si vous avez une idée avec (.htacess) ou autres cela serais très gentil de votre de m'aider!
Je vous remercie par avance!

Cordialement

PS:
voici ma page php ou je voudrais inclure un captcha:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
<body oncontextmenu="return false;">
<?php
echo '<p style="font-size:18px;font-weight:bold;text-align:center;">'.GEN_188.'</p>';
$interlocuteur = $metier->getTable(T_INSCRIPTION,"id",$_GET['id']);
$pseudo_id = $interlocuteur->id;
$pseudo = $interlocuteur->pseudo;
$naissance = $interlocuteur->naissance;
$comp1 = $metier->getTable(T_COMPL_INFO_PROFIL1,"identifiant",$interlocuteur->id);
$miniature = afficherMiniatureSelonGenre($interlocuteur->id,$interlocuteur->pseudo,$interlocuteur->type_membre);
$pays = $metier->getChamps("pays",T_PAYS,"id",$interlocuteur->domiciliation);
$ville = $interlocuteur->ville;
$etat = $metier->getChamps("identifiant",T_ONLINE,"pseudo",$interlocuteur->pseudo);
if($etat){
	$ic_etat = '<p class="etat"><img src="'.HTTP_IMAGE.'online.gif" alt="'.ATTRIBUT.'"/></p>';
}
else{
	$ic_etat = '<p class="etat"><img src="'.HTTP_IMAGE.'offline.gif" alt="'.ATTRIBUT.'"/></p>';
}
$n = explode("-",$naissance);
 
if($_POST['do'] == "1"){
	if(!empty($_POST['requiredObj']) AND !empty($_POST['requiredDesc'])){
		if(empty($_GET['id'])){
			//destinataire inconnu
			$id_destinataire = $metier->getChamps("id",T_INSCRIPTION,"pseudo",minuscule($_POST['requiredPs']));
			if($_POST['requiredPs'] == ""){
				redirection(0,$_SERVER['HTTP_REFERER']);
			}
			elseif($id_destinataire == ""){
				msg(GEN_191);
				redirection(0,$_SERVER['HTTP_REFERER']);
			}
			else{
				$bannir = $metier->executerSQL("SELECT `id` FROM `".T_BANNIR."` WHERE `id_pseudo`='".$id_destinataire."' AND `id_pseudo_blacklister`='".$_SESSION['id_client']."'","r_o");
				if($bannir->id){
					//membre banni.... formulaire désactivé
					msg(GEN_192);
					redirection(2,$_SERVER['HTTP_REFERER']);
				}
				else{
					$metier->executerSQL("INSERT INTO `".T_MESSAGERIE."`(`id_exp`,`id_dest`,`date_creation`,`objet`,`commentaire`,`lu`,`genre`) " .
						"VALUES('".$_SESSION['id_client']."','".$id_destinataire."','".date("Y-m-d H:i:s",time())."','".ucfirst(minuscule($_POST['requiredObj']))."','".textareaFormater(controleMessage($_POST['requiredDesc']))."','non','texte')","");
					//---------------- ENVOYER UN MAIL DE NOTIFICATION -----------
					$on = $metier->getChamps("pseudo",T_ONLINE,"identifiant",$id_destinataire);
					if(empty($on)){
						$m1 = $metier->getTable(T_INSCRIPTION,"id",$id_destinataire);
						envoyerUnMail($m1->email,GEN_193,sprintf(GEN_194,$m1->pseudo,$_SESSION['pseudo_client'],convertirDate(date("Y-m-d H:i:s",time()),"oui"),$_SESSION['pseudo_client'],$_SESSION['id_client']),MAIL_CORRESPONDANCE,MAIL_CORRESPONDANCE);
					}
					//------------------------------------------------------------
					msg(GEN_190);
					redirection(1,HTTP_INTERFACE.F_MESSAGERIE);
				}
			}
		}
		else{
			//destinataire connu
			$metier->executerSQL("INSERT INTO `".T_MESSAGERIE."`(`id_exp`,`id_dest`,`date_creation`,`objet`,`commentaire`,`lu`,`genre`) " .
						"VALUES('".$_SESSION['id_client']."','".minuscule($_GET['id'])."','".date("Y-m-d H:i:s",time())."','".ucfirst(minuscule($_POST['requiredObj']))."','".textareaFormater(controleMessage($_POST['requiredDesc']))."','non','texte')","");
			//---------------- ENVOYER UN MAIL DE NOTIFICATION -----------
			if(empty($etat)){
				envoyerUnMail($interlocuteur->email,GEN_193,sprintf(GEN_194,$interlocuteur->pseudo,$_SESSION['pseudo_client'],convertirDate(date("Y-m-d H:i:s",time()),"oui"),$_SESSION['pseudo_client'],$_SESSION['id_client']),MAIL_CORRESPONDANCE,MAIL_CORRESPONDANCE);
			}
			//------------------------------------------------------------
			msg(GEN_190);
			redirection(1,HTTP_INTERFACE.F_MESSAGERIE);
		}
	}
	else{
		redirection(0,$_SERVER['HTTP_REFERER']);
	}
}
else{
	if($_GET['id']){
		//========== DESTINATAIRE EST CONNU ==========
		$bannir = $metier->executerSQL("SELECT `id` FROM `".T_BANNIR."` WHERE `id_pseudo`='".minuscule($_GET['id'])."' AND `id_pseudo_blacklister`='".$_SESSION['id_client']."'","r_o");
		if($bannir->id){
			//membre banni.... formulaire désactivé
			msg(GEN_192);
			redirection(2,$_SERVER['HTTP_REFERER']);
		}
		else{
			?>
			<form action="<?php echo HTTP_INTERFACE.F_MESSAGERIE;?>?a=2&s=e&id=<?php echo $_GET['id']; ?>" method="post" onSubmit="return checkrequired(this)" name="formulaire">
				<table id="lireMessage">
					<tr>
						<td class="mini"><a href="http://www.ata-rencontre.com/profil-<?php echo $_GET['id']; ?>.php"><?php echo $miniature; ?></td>
						<td class="info">
							<p class="pseudo"><?php echo $pseudo; ?></p>
							<p class="age"><strong><?php echo date("Y")-$n[2].'</strong> '.GEN_129;?></p>
							<p class="pays"><?php echo GEN_92;?> <strong><?php echo $pays;?></strong></p>
							<p class="ville"><?php echo GEN_94;?> <strong><?php echo $ville;?></strong></p>
							<p class="statut"> <?php echo GEN_108; ?> <strong><?php echo ($comp1->statut)?$metier->getChamps("element",T_STATUT,"id",$comp1->statut):'nc';?></strong></p>
							<p class="statut"> <?php echo GEN_110; ?> <strong><?php echo ($comp1->profession)?$comp1->profession:'nc';?></strong></p>
						</td>
						<td><?php echo $ic_etat; ?>
						<a href="http://www.ata-rencontre.com/profil-<?php echo $_GET['id']; ?>.php"><img src="http://www.ata-rencontre.com/images/loupe.png" alt="Voir son profil" title="Voir son profil" /></a></td>
 
 
					</tr>
					<tr>
						<td colspan="3"><?php echo GEN_186; ?> <input type="text" name="requiredObj" size="70" onPaste="this.value = '';return false;" onpaste='return false;'/> <a href="http://www.ata-rencontre.com/FAQ" target="_blank"><b><FONT COLOR="#990000">(Aide)</font></b></a></td>
					</tr>
					<tr>
						<td colspan="3"><?php echo GEN_187; ?> <font color="#FF0000"><br /> <b>-Le spam est interdit!<br />-Merci de rester polis et courtois!<br />-Pour votre sécurité, ne communiquez pas votre adresse mail à un/une inconnu(e)!</b></font><br /><textarea name="requiredDesc" id="message" onKeyUp="pasteControl();" onBlur="pasteControl();" rows="10" cols="86" ></textarea></td>
 
					</tr>
					<tr>
						<td colspan="3" style="text-align:center;">
						    <input class="cfrm" name="email" type="text" value=""/>
							<input type="hidden" name="do" value="1"/>
							<input type="image" src="<?php echo HTTP_IMAGE.BT_ENVOYER; ?>"/>
							<font face="Arial" color="#000000"><marquee  behavior=scroll direction="left" bgcolor="#FFFFFF" border="0" width="400" height="23"><b><h2>RAPPEL: Vous disposez d'un tchat webcam avec mode audio "disponible sur votre tableau de bord"</marquee></h2></b></font>
						</td>
					</tr>
</table>
 
 
			</form>
			<?php
		}
	}
	else{
		//========== DESTINATAIRE INCONNU ==========
		?>
		<form action="<?php echo HTTP_INTERFACE.F_MESSAGERIE;?>?a=2&s=e" method="post" onSubmit="return checkrequired(this)" name="formulaire">
			<table id="lireMessage">
				<tr>
					<td style="padding-top:7px;"><?php echo GEN_189; ?> <input type="text" name="requiredPs" size="20"/></td>
				</tr>
				<tr>
					<td style="padding-top:7px;"><?php echo GEN_186; ?> <input type="text" name="requiredObj" size="70" style="margin-left:4px;"/></td>
				</tr>
				<tr>
					<td style="padding-top:7px;"><?php echo GEN_187; ?><br /><textarea name="requiredDesc" rows="10" cols="86"></textarea></td>
				</tr>
				<tr>
					<td style="text-align:center;padding-top:7px;">
						<input type="hidden" name="do" value="1"/>
						<input type="image" src="<?php echo HTTP_IMAGE.BT_ENVOYER; ?>"/>
					</td>
				</tr>
			</table>
		</form>
		<?php
	}
}
?>