verifier l integrité d'une chaine de caractere

paxx
Invité n'ayant pas de compte PHPfrance

20 mars 2007, 23:13

Bonjour, sur mon site, j'ai fait une partie ou les gens peuvent laisser des commentaires sur les news, or, je me retrouve infesté de messages de publicité et j'en ai environ 2000 depuis début septembre :/
Je pense faireune analyse du texte et si je trouve des liens a href que ca n effectue pas la requete insert, cependant, je ne vois pas comment je peu rechercher ceci dans ma chaine de caractère.
Si vous avez une meilleure idée pour virer tous ces massages publicitaires, ceci me serai d'une grande aide. Merci d'avance

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

21 mars 2007, 10:59

Tu peux utiliser les fonctions ereg() ou strpos() pour vérifier si une chaine est contenue dans une autre... ainsi, si tu détectes un "http" ou un "www" tu pourras bloquer l'insertion et avertir l'utilisateur :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

ViPHP
AB
ViPHP | 5818 Messages

21 mars 2007, 11:07

Bonjour,

tu peux faire comme ça:
//champ 'message' issu  du formulaire

$message = isset($_POST['message'])?  $_POST['message'] : '' ;
$spam = (ereg("(\<|\[)",$message))? 1 : 0;

if ($spam == 0 && !empty($message))
{ //insertion du  message dans la base de donnée
}