function mot_interdit($message){
if(filesize("interdictions.txt")>0){
$txt= file_get_contents("interdictions.txt");//on récupère le contenu de notre fichier texte "interdictions.txt"
$ex=explode("\r\n",$txt);//on éclate le fichier en plusieurs lignes pour récupérer ensuite chaque ligne et une vérification ligne par ligne
//on boucle les interdictions avec for() pour voir si un terme qui est dans le fichier txt est aussi dans le contenu du message
for($i=0;$i < count($ex);$i++){
//si un terme est trouvé: on passe la variable interdiction à 1 pour ensuite ne pas valider le formulaire
if(preg_match("#(".$ex[$i].")#i",$message)){//notez le petit "i" à la fin de la regex pour valider un mot en majuscule comme en minuscule (i pour insensible à la casse)
return array("interdiction"=>1,"TermeInterdit"=>$ex[$i]);//on enregistre le mot interdit (TermeInterdit) pour en informer la personne qui poste afin qu'il puisse solutionner l'erreur facilement
}
}
}
return false;
}
if(isset($_POST['message'])) {
if(mot_interdit($_POST['message'])){//si un mot interdit à été trouvé dans le message
$mot_interdit=mot_interdit($_POST['message']);
echo "Le terme ".$mot_interdit['TermeInterdit']." est interdit.";
} else {//sinon on valide le formulaire
echo "OK, le formulaire ne contient pas de mots/termes interdits";
//traitement du formulaire...
}
}
?>
<form method="post">
<textarea name="message"></textarea>
<input type="submit"/>
</form>
mot1
mot2
etc
...
christian30 le 15 Décembre 2022 à 17:03
bonjour,
où intégrer le code dans un formulaire de contact.
merci
admin le 15 Décembre 2022 à 21:35
Voir l'exemple dans le deuxième onglet : "Exemple" ;)