Page 1 sur 1

Pour effectuer une bonne recherche

Posté : 05 avr. 2007, 23:24
par deborah
Bonsoir les gens,

Voilà lorsque j'effectue une recherche vias mon formulaire j'aimerai que lorsque je rentre &é"(-è_çà ou autre au moment de la vérification il m'envoye une erreur.

Merci d'avance de votre aide
Déborah

Posté : 05 avr. 2007, 23:27
par ouckileou
Algo à suivre :

Code : Tout sélectionner

Si chaine contient tel caractère Alors Erreur Sinon Recherche FinSi
Pour tester la présence de certains caractères dans une chaîne, regarde les fonctions de manipulation de chaînes de caractères : http://fr.php.net/manual/fr/ref.strings.php

Ou celles pour les expressions régulières : http://www.phpfrance.com/tutoriaux/inde ... regulieres

Posté : 05 avr. 2007, 23:28
par deborah
tu ne pourrais pas plus m'aiguiller stp
car j'avais commencer à faire

Code : Tout sélectionner

$carac_interdits = array( '@' , '\'' , '/' , '"' , '#' , '{' , '}' , '[' , ']' , '|' , '`' , '^' , '¤' , ':' , '!' ); for($i=0,$nbc=count($carac_interdits);$i<$nbc;$i++) { if(caracteres_interdits($search)) echo 'Il y a un caractère interdit dans le texte'; else echo 'Le texte est ok';
mais je ne comprends pa ce qui ne marche pas
Merci
:oops: :priere: :priere: [/code]

Posté : 05 avr. 2007, 23:43
par ouckileou
Ben déjà dans ton code, elle sort d'où la fonction $caracteres_interdits() ?

À ta place, je parcourrais mon tableau de caractère grâce à foreach() (ton for() marche bien aussi, sauf que tu ferais mieux de n'utiliser count() qu'une fois et de stocker le résultat dans le variable, plutôt que de rappeller cette fonction à chaque tour) et j'utiliserais une fonction de recherche de position, comme strpos().
$carac_interdits = 
array( '@' , '\'' , '/' , '"' , '#' , '{' , '}' , '[' , ']' , '|' , '`' , '^' , '¤' , ':' , '!' );

$isTexteOk=true;

foreach($carac_interdits as $caractere) {
	if (strpos($recherche,$caractere)) {
		$isTexteOk=false;
	}
}
Une fois que tu auras fais marcher ta propre méthode, renseigne toi survl'utilisation des expressions régulières (sur ce forum par exemple) qui font ça très bien, et permettent des vérifications encore plus puissantes.