Verifier un champ et interdire des caracteres

Soyez le premier à donner votre avis sur cette source.

Snippet vu 17 741 fois - Téléchargée 30 fois

Contenu du snippet

simple en apparence, mais pour trouver un bon code de verification de formulaire qui permette d'interdire des caracteres...bonjour la galere, alors apres 1h de bataille j'ai mi ca au point alors profitez en! :-))

Source / Exemple :


<script language="javascript">
function Verif()
{
rejet = false;//variable qui nous pemettra de valider ou pas le formulaire
falsechar="";//variable qui stockera les caracteres non valides trouvés
var non = new Array("/","'","\"","\\");//tableau des caracteres non valides, vous pouvez les modifier

//----début de la boucle qui verifie un a un chaque caractere saisi dans le champ
for (i=0 ; i <= MonFormulaire.MonChamp.value.length ; i++)
{
//----début de la boucle qui fait défiler les elements du tableau 'non' un a un pour les comparer aux caracteres du champ
for (y=0 ; y <= non.length ; y++)
{
//----debut de la condition (si le caractere i du champ correspond a la valeur y du tableau...)
if ((MonFormulaire.MonChamp.value.charAt(i)==non[y]))
{
rejet=true;//si un seul caractere invalide est trouvé l'envoi est arreté
//----enregistrement des caracteres invalides dans la variable falsechar
if (falsechar=="")
{
falsechar= non[y];
}else{
falsechar= falsechar+","+non[y];
}
//---fin enregistrement des caracteres invalides
}
//---fin de la condition de comparaison des elements saisi-tableau
}
//---fin de la boucle "éléments du tableau"
}
//---fin de la boucle "caracteres saisis"

//-----si des caracteres invalides sont trouvés...
if (rejet==true)
{
//---affichage de l'alerte
if (falsechar.length==1){alert(falsechar+" is an non authorised char ");}else{alert(falsechar+" are non authorised chars ");}
return (false);
//----si les caracteres sont valides....
}else{
formulaire.submit();
return (true);
}
}
</script>

Conclusion :


executez la foncion par <form... onSubmit="return(Verif())">
bonne utilisation!

A voir également

Ajouter un commentaire Commentaires
payetonju Messages postés 436 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 2 juillet 2014 4
16 déc. 2008 à 16:26
pour la redirection tu fais
header("location: /tapage.php");
Et pour traiter les differents cas de redirection il faut que tu renvoies depuis ton formulaire sur la page courante, car ton traitement PHP se fait generalement en haut de page.
Et pour les variables si elles ne passent plus en POST passe les en SESSION.

Et la source en haut ne marche pas. Et quand elle marche, elel affiche juste uen erreur et on continue a naviguer quand meme.
cs_crashtest Messages postés 105 Date d'inscription lundi 16 février 2004 Statut Membre Dernière intervention 28 août 2005
8 janv. 2006 à 11:09
lu désolé je connai juste un minimum en php sorai ete en javascript jorai pu taider mai la non dsl @++
Allen912 Messages postés 6 Date d'inscription dimanche 8 janvier 2006 Statut Membre Dernière intervention 26 mars 2006
8 janv. 2006 à 00:13
Bonjour,
Comment faire ensuite pour rediriger vers la page qui traite le formulaire ?
J'imagine que ce n'est pas directement possible (les variables ne passe plus en POST...)

J'ai fait ceci
(...)
else{ // Le champ est valide, traitement du formulaire
$_SESSION['session_qt']=$_POST['qt'];
$_SESSION['session_idp']=$_POST['idp'];
<META http-equiv="refresh"; Content="0;URL='ajout.php'">
return;

Ou la page ajout traiterait les variables de sessions dans lesquelles j'ai été mettre les champs du formulaire...
Si vous pouviez m'aider, merci d'avance...
ilya79 Messages postés 9 Date d'inscription samedi 18 juin 2005 Statut Membre Dernière intervention 15 février 2007
20 juin 2005 à 00:59
re
et pour les commentaires redesolé pour les #, j'avais mis des // puis ca sortait tout en rouge une fois sur le site alors j'ai voulu essayer autre chosee... je modifie...
ilya79 Messages postés 9 Date d'inscription samedi 18 juin 2005 Statut Membre Dernière intervention 15 février 2007
20 juin 2005 à 00:49
desole ce que j'ai oublie c'est qu'il faut executer le script par un <form onSubmit="return(Verif())"> si vous l'executer au niveau du bouton a savoir ca marche pas... a + et merci pour la remarque! ;-)
Afficher les 7 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.