[RESOLU] fonction muette

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] fonction muette

Re: fonction muette

par Calimero » 11 mars 2012, 22:02

Bravo sirakawa :lol:

Re: fonction muette

par xTG » 11 mars 2012, 21:19

=D> =D> =D> =D>

Re: fonction muette

par sirakawa » 11 mars 2012, 19:46

Warning: stristr() [function.stristr]: needle is not a string or an integer in /var/www/htdocs/tests/cherche.php
est très clair sur l'erreur.
sans quoi, stocker les mots interdits dans un tableau, et les mots de la réponse dans l'autre, permettrait de se servir de array_intersect, ou de array_filter...

par hakazizi » 29 juil. 2008, 12:04

Je partage le doute d'AB. la page de manuel d'stristr ne me rassure pas quand à l'utilisation d'un tableau en deuxième paramètre. Et si ce doute est fondé, ça peut très bien expliquer ton souci :-)

Essaye d'encapsuler stristr dans une fonction pour traiter dans une boucle le tableau, comme tu veux qu'il le soit (Que veux tu exactement obtenir comme résultat si plusieurs éléments du tableau sont trouvés ?...).
c'est des test pour un livre d'or sur mon site et je veux qu'ils soit correct sans insulte ni mots comme 'sex','viagra', etc...
je suis passer par un autre chemin qui me donne les resultats que je veux.
<?php  
$recherche="mot mot1 mot2 mot3 mots4"; //la variable qui va servir a l'esaie 
$mot=array("mot","mot1","mot2","mot3","mot4");//la liste de mot
$recherche=str_replace(' ','',strtolower($recherche)); //les characteres inutile pouvant nuire a la recherche et on met tout en minuscule pour le moment il n'y en a qu'un mais je pense le modifier par un regex qui ne laissera passer que les lettre et supprimer tous le reste
$recherche=str_replace($mot,'',$entree);
if(strlen($recherche)!=strlen($entree))//on compte le nombre de charactere pour voir si quelque chose a ete supprimer
{ echo'Vous êtes vulgaire votre message ne sera pas poster';//finalement je n'entre pas dans leur jeux d'insulte je reste polie
$recherche=NULL;//on vide la variable si une insulte a ete trouver
 }
?>
PS il est loin d'etre finit j'en suis au tous premier test
merci a tous...

par AB » 29 juil. 2008, 01:28

Et bien si tu souhaites utiliser stristr() utilises cette fonction dans une boucle sur ton tableau de mots recherchés.

EDIT Avait pas vu la réponse de Calimero

par Calimero » 29 juil. 2008, 01:20

Je partage le doute d'AB. la page de manuel d'stristr ne me rassure pas quand à l'utilisation d'un tableau en deuxième paramètre. Et si ce doute est fondé, ça peut très bien expliquer ton souci :-)

Essaye d'encapsuler stristr dans une fonction pour traiter dans une boucle le tableau, comme tu veux qu'il le soit (Que veux tu exactement obtenir comme résultat si plusieurs éléments du tableau sont trouvés ?...).

par hakazizi » 29 juil. 2008, 00:36

non je n'en suis pas sur mais j'ai vraiement besoin de passer un tableau pour les mot a rechercher.
merci

par AB » 29 juil. 2008, 00:28

Tu es sûr que l'on peux passer un tableau comme deuxième paramètre pour la fonction stristr ?

fonction muette

par hakazizi » 28 juil. 2008, 22:49

bonjour je ne comprend pas pourquoi je n'arrive pas a renvoyer une valeur a une fonction.
la fonction reste muette je ne comprend plus rien.
j'ai essayer avec je ne sait combien de fonction pour obtenir toujours la meme reponse c'est a dire rien...
merci
la derniere que j'ai utilisé
<?php 
$recherche="mot mot1 mot2 mot3 mots4"; //la variable qui va servir a l'esaie
$mot=array("mot","mot1","mot2","mot3","mot4");//le tableau contenant la liste des mots a rechercher
$essaie=stristr($recherche,$mot);
if($essaie===FALSE){ echo'tu l\'as dans le cul'; } else{ echo'c\'est ok'; } //$essaie devrais renvoyer la chaine puisqu'elle est sencer trouve les mots
echo"<br>"; 
echo $essaie; //la fonction ne renvoie rien 

//autre exemple

$recherche="mot5 mot6 mot7 mot8 mots9"; //la variable qui va servir a l'esaie
$mot=array("mot","mot1","mot2","mot3","mot4");//le tableau contenant la liste des mots a rechercher
$essaie=stristr($recherche,$mot);
if($essaie===FALSE){ echo'tu l\'as dans le cul'; } else{ echo'c\'est ok'; } //$essaie devrais renvoyer false puisqu'elle n'a rien trouve
echo"<br>"; 
echo $essaie; //la fonction ne renvoie rien 
?>