Interdir certains mots dans un commentaire de
fabrice11901
Messages postés
787
Statut
Membre
-
Aps -
Aps -
Bonjour, je suis non-voyant et suis élève dans un collège; je connais le html php et mysql assez bien (koi que parfois j'ai des pb comme là !) en fait :
comme je suis le seul à m'interraisser au language de site et suis toujours collé sur l'ordinateur !, mon prof "d'nta" (une séance de loisir informatique) m'a demandé d'améliorer le site du collège en faisant quelques scripts; étant d'acord j'ai demandé qu'est-ce qu'il voudrait faire il m'a dit un livre d'or; ça c'est bon le livre d'or je sais le faire mais le pb est comme c'est le site d'un collège et que certains malins pourrait envoyer des connereies dans le livre d'ors, il faudrai interdir certains mots :si le commentaire contient des mots qui serait interdi (lister peut-être dans un fichier text) alors on envoit pas le commentaire dans la table mysql si tout est ok c'est bon on envoit.
Merci à ceux qui pourront m'aider !
comme je suis le seul à m'interraisser au language de site et suis toujours collé sur l'ordinateur !, mon prof "d'nta" (une séance de loisir informatique) m'a demandé d'améliorer le site du collège en faisant quelques scripts; étant d'acord j'ai demandé qu'est-ce qu'il voudrait faire il m'a dit un livre d'or; ça c'est bon le livre d'or je sais le faire mais le pb est comme c'est le site d'un collège et que certains malins pourrait envoyer des connereies dans le livre d'ors, il faudrai interdir certains mots :si le commentaire contient des mots qui serait interdi (lister peut-être dans un fichier text) alors on envoit pas le commentaire dans la table mysql si tout est ok c'est bon on envoit.
Merci à ceux qui pourront m'aider !
A voir également:
- Interdir certains mots dans un commentaire de
- Commentaire word - Guide
- Trousseau mot de passe iphone - Guide
- Générateur de mots - Télécharger - Sécurité
- Mots de passe enregistrés - Guide
- Mot de passe administrateur - Guide
10 réponses
bonjour
je ne sais pas si je vais avoir une réponse adapté mais je pense que le plus simple c'est de vérifier de temps en temps qu'il n'y ai pas de mauvais messages car si tu décide d'utiliser ta méthode, il peut quand même arrivé que des messages indésirables mais ne contenant pas de mauvais mot clefs arrivent dans le forum,le plus simple,comme je te le dis, de vérifier de temps en temps et d'éditer la liste des messages du forum,c'est en tout cas ce que fait une amie à qui j'ai construit un site.
voila bonne chance
et félicitaion car ça ne doit pas être trés facile de faire de l'informatique en étant non voyant
salut
je ne sais pas si je vais avoir une réponse adapté mais je pense que le plus simple c'est de vérifier de temps en temps qu'il n'y ai pas de mauvais messages car si tu décide d'utiliser ta méthode, il peut quand même arrivé que des messages indésirables mais ne contenant pas de mauvais mot clefs arrivent dans le forum,le plus simple,comme je te le dis, de vérifier de temps en temps et d'éditer la liste des messages du forum,c'est en tout cas ce que fait une amie à qui j'ai construit un site.
voila bonne chance
et félicitaion car ça ne doit pas être trés facile de faire de l'informatique en étant non voyant
salut
Bonjour, oui mais ça pourrai interdir peut-être la plus par par exemple je donne un ex "ce bahu est trop pourri" il y a parfois des genres d'individu qui ne savent pas ce qu'est de faire un travail php et s'ammuse il ne s'agit pas d'un forum mais d'un livre d'or formulaire, page php qui envois le commentaire dans la table et une autre qui affiche les commentaires. Si quelqu'un à une solution... on peut en effet supprimer les messages mais je ne suis pas toujours entrain de m'occuper du site du collège donc ça pourrai arriver qu'une salle bestiole vienne foutre le bordel... je peux quand même essayer pour le début puis après si y a problème, on pourra modifier mais si y en a qui savent comment faire merci de venir ici :
mon site :
http://sons.gratuits.free.fr si y en a qui pourrai me dire comment il verrai la couleur du texte sur les pages (ce qui n'est pas top en ce moment...) je pense avoir fais un site interraissant. Inscrivez-vous nombreux !!!!!!!!
Fabrice
mon site :
http://sons.gratuits.free.fr si y en a qui pourrai me dire comment il verrai la couleur du texte sur les pages (ce qui n'est pas top en ce moment...) je pense avoir fais un site interraissant. Inscrivez-vous nombreux !!!!!!!!
Fabrice
Salut,
Pour ton site, perso je suis sous Mozilla/Linux et daltonien...
-> le gris clair sur fond blanc par top au niveau lisibilité
-> le gris clair sur fond vert : illisible
-> analyse de signature en bas de page: il reconnait pas le CPU...
Sinon pour ton problème, fais des recherches sur les moteurs anti-spam tout
en conservant une possibilité de modération a postériori.
Le plus simple reste une modération à priori, le message n'apparait pas sur le
site tant qu'il n'est pas marqué comme visible par un modérateur.
A+, crabs
Pour ton site, perso je suis sous Mozilla/Linux et daltonien...
-> le gris clair sur fond blanc par top au niveau lisibilité
-> le gris clair sur fond vert : illisible
-> analyse de signature en bas de page: il reconnait pas le CPU...
Sinon pour ton problème, fais des recherches sur les moteurs anti-spam tout
en conservant une possibilité de modération a postériori.
Le plus simple reste une modération à priori, le message n'apparait pas sur le
site tant qu'il n'est pas marqué comme visible par un modérateur.
A+, crabs
slt, pour mon site, oui je sais les couleurs c'est pas top... pour l'analyse du cpu c'est parcq tu dois peut-être avoir un logiciel qui empêche de regarder sur ton ordi... mais de tt façon l'analyse ça va être supprimer
Pour ton problème je trouve 2 solutions :
-Soit comme l'a dit crabs il faut qu'un modérateur valide le message pour qu'il s'affiche.
-Soit tu peux utiliser des expression régulières (regex) qui n'affichent pas le message si il contient certains mots. Mais c'est long a faire et ca complique le script...
Voila
-Soit comme l'a dit crabs il faut qu'un modérateur valide le message pour qu'il s'affiche.
-Soit tu peux utiliser des expression régulières (regex) qui n'affichent pas le message si il contient certains mots. Mais c'est long a faire et ca complique le script...
Voila
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
slt, crabs, ta un site toi donne l'adresse pour que je regarde sur quoi tu fais... et pour la deuxième solution ça serai pas mal tu sais le faire? je vais regarder ça... parcq je n'ai jamais utiliser ces fonctions parcq pour la modération c'est trop long pour qu'un modérateur accepte le message faut que ce soit automatique. Merci
re-salut,
Tu peux faire le choix de mettre en attente les messages qui pourrait contenir
des mots interdits. Attention ce genre de technique n'est pas fiable à 100%.
Pour ça il faut que tu constitues un dictionnaire de mots à bannir et tenir
compte que le 'posteur' peut faire des fautes.
Exemple de code en PHP, $dico est un tableau qui contient les mots à
bannir.
Le '80' est le taux de similitude entre les mots. C'est un pourcentage.
On peut améliorer la qualité du filtrage en fonction du mot du dictionnaire
en créant un tableau associatif mot => taux de similitude accepté.
Sinon pour mon site c'est le http://ccazajus.free.fr/
A+, crabs
Tu peux faire le choix de mettre en attente les messages qui pourrait contenir
des mots interdits. Attention ce genre de technique n'est pas fiable à 100%.
Pour ça il faut que tu constitues un dictionnaire de mots à bannir et tenir
compte que le 'posteur' peut faire des fautes.
Exemple de code en PHP, $dico est un tableau qui contient les mots à
bannir.
function texteOK( $texte, $dico )
{
// decoupe le texte en mot
$mots = preg_split("/[\s,'.:]+/", $texte ) ;
foreach( $mots as $mot )
{
foreach( $dico as $banni )
{
$similar = 0 ;
$ret = similar_text( $mot,$banni, $similar ) ;
if ( $similar >= 80 ) return false ;
}
}
return true ;
}
Le '80' est le taux de similitude entre les mots. C'est un pourcentage.
On peut améliorer la qualité du filtrage en fonction du mot du dictionnaire
en créant un tableau associatif mot => taux de similitude accepté.
Sinon pour mon site c'est le http://ccazajus.free.fr/
A+, crabs
Si c'est de ma solution a moi que tu parles fabrice11901 il faut savoir que les regex sont assez difficiles à apprendre. De plus, cela alourdira ton code source et seul les mots exacts que tu as interdit seront supprimés (ou remplacés).
Enfin voici deux pages où les regex sont présentées et expliquées :
http://www.siteduzero.com/php/regex1.php
http://www.siteduzero.com/php/regex2.php
Enfin voici deux pages où les regex sont présentées et expliquées :
http://www.siteduzero.com/php/regex1.php
http://www.siteduzero.com/php/regex2.php
slt, oui c'est assez compliqué à réaliser ! on peut pas utiliser un autre fonction dans ce genre moin complexe?
merci
merci
slt, le problème c'est ça que ce n'est pas trop fiable en fait ce qu'il faudrai c'est un script l'orsque le visiteur clique sur envoyer le commentaire, qu'un script analyse les mots et un mot répertoriés dans un fichier text par exemple soit remplacer par des ***** et après que le message soit envoyer à mysql. Tu sais faire ça crabs?
Mon principe n'est pas de faire, j'en ai déja assez à faire, mais de filer un coup
de main pour arriver à faire. Donc je vais de filer quelques pistes en PHP.
Etape 1) tu décomposes le texte a l'aide d'une expression regulière
$texte est le texte posté, $mot sera un tableau associatif
$mots[0] contiendra toutes les occurences de l'expression
$mots[1] contiendra toutes les occurences de la 1ère extraction: tout ce qui
n'est pas vide et qui ne contient pas d'espace, tabulations, de '.' de , etc
$mots[2] contiendra toutes les occurences des séparation ou pontuaction
Ce sont des tableaux. Complète l'expression regulière avec tous les signes de
ponctuation.
Etape 2) à la recherche des mots bannis
tu parcours mots[1] qui est un tableau en effectuant le contrôle que tu
souhaites et en remplacant si nécessaires les mot incorrects pas des '***'
A toi de choisir la méthode pour décider si un mot est incorrect ou pas
Etape 3) fournir le texte modifié par auto-modération
Ensuite tu reconstitue le texte en concaténant alternativement les éléments de
$mot[1] et $mot[2].
A+, crabs
de main pour arriver à faire. Donc je vais de filer quelques pistes en PHP.
Etape 1) tu décomposes le texte a l'aide d'une expression regulière
$ret=preg_match_all("/([^\s,'.:]+)([\s,'.:]*)/", $texte, $mots ) ;
$texte est le texte posté, $mot sera un tableau associatif
$mots[0] contiendra toutes les occurences de l'expression
$mots[1] contiendra toutes les occurences de la 1ère extraction: tout ce qui
n'est pas vide et qui ne contient pas d'espace, tabulations, de '.' de , etc
$mots[2] contiendra toutes les occurences des séparation ou pontuaction
Ce sont des tableaux. Complète l'expression regulière avec tous les signes de
ponctuation.
Etape 2) à la recherche des mots bannis
tu parcours mots[1] qui est un tableau en effectuant le contrôle que tu
souhaites et en remplacant si nécessaires les mot incorrects pas des '***'
foreach( $mot[1] as $cle => $mot ) if ( mot_incorret( $mot ) $mot[1][$cle] = '***' ;
A toi de choisir la méthode pour décider si un mot est incorrect ou pas
Etape 3) fournir le texte modifié par auto-modération
Ensuite tu reconstitue le texte en concaténant alternativement les éléments de
$mot[1] et $mot[2].
$texte = '' ; for( $i=0; $i<count($mots[1]); $i++ ) $texte.=$mots[1][$i].$mots[2][$i] ;
A+, crabs
> http://www.editeurjavascript.com/scripts/scripts_formulaires_3_174.php
Petit script adaptable qui je pense conviendra à certains.
Petit script adaptable qui je pense conviendra à certains.