PHP : Former la série, la partie 1 : Validators et validation de Client-côté

| by Dennis Pallett | September 26, 2005
Introduction

Bienvenue à la première partie d'une nouvelle série en deux parties sur le PHP : Former le composant de Web. Dans la présente partie, je te donnerai une introduction à PHP : Former, ses dispositifs, et pourquoi il est si utile. Je discuterai également les validators incorporés qui PHP : Former les appuis. Dans la deuxième partie je discuterai les dispositifs plus avançés de PHP : Forme.

Ce qui est PHP : Forme ?

PHP : Former est nouveau) composant de Web d'a (, développé par des manuscrits de TGP PHP (http://phpscripts.pallettgroup.com). Il est conçu pour vous aider à créer des formes avec beaucoup moins d'effort. Quand vous créez un nouveau manuscrit de PHP, vous devrez assurément créer des formes pour permettre à l'entrée d'être écrits. Il n'y a (presque) aucun manuscrit de PHP sans formes, et les formes exigent habituellement de la validation pleine de s'assurer qu'il n'y a aucune fuite de sécurité. Il serait gentil si ces formes sont accessibles aussi bien, mais ceci obtient souvent oubliée.

Nous faisons devoir le tout créer des formes à plusieurs reprises. Et chaque fois que nous avons dû écrire ces fonctions de validation. Je suis sûr que vous vous rappelez… si (vider ($blah)) {écho « invalide » ; }, etc. Après un moment il devient vraiment un alésage et mondain charger, et la majeure partie du temps où nous ne le faisons pas correctement non plus. Une des choses les plus dures à faire est de renvoyer des messages d'erreur, indiquant ce qui est erroné, et permettre à des visiteurs de fixer leurs erreurs, sans devoir refaire la forme complète. J'avais l'habitude de leur dire simplement que frapper l'en arrière-bouton, après renvoi des erreurs, mais ceci est évidemment une non-ainsi-bonne manière de la faire.

Avec reconnaissance, c'est où PHP : Former les étapes po. Il manipule toutes pièces de sondage pour toi, et les fait correctement aussi bien.

PHP : La forme a le soutien des validators incorporés, qui signifie que vous seulement devez employer un simple HTML-comme la syntaxe pour ajouter la nouvelle logique de validation à une forme. Avec ces validators vient également la validation automatique de client-côté. Tout Javascript nécessaire est créé pour toi, et il n'y a rien que vous devez faire. Un autre dispositif remarquable de PHP : La forme sont de prétendus « formtypes », qui sont fondamentalement des calibres de forme. Ceux-ci vous permettent définissent les calibres de forme, qui peuvent être réutilisés à plusieurs reprises encore.

Allons voir plus étroit la pièce de validation de PHP : Forme ; les validators.

Validation incorporée de Validators et de Client-côté

Avant que nous regardions les validators, regardons d'abord le PHP de base : Former la syntaxe. Elle a une syntaxe vraiment simple, parce que c'est HTML de base. Pour créer une nouvelle forme, employer les étiquettes, comme ainsi :

<php : former le name= " exemple " >

… le HTML de forme va ici…

</php : form>

C'est tout ce qui est vraiment nécessaire. Mais vous devez également dire la forme de montrer, en utilisant PHP, comme ainsi :

$_FORMS->display (« exemple ») ;

Ces deux choses sont les seules choses absolument nécessaires pour créer et montrer une nouvelle forme. Naturellement, rien ne sera montré pourtant parce que vous n'avez créé aucun champ d'entrée. Pour voir une forme simple dans l'action, aller voir la démo 1 (http://www.phpit.net/demo/phpform%20series/demos/demo1.php)

Passons aux validators maintenant. Validators sont employés pour valider des champs de forme, et juste comme la forme étiquette, ils sont HTML simple, par exemple :

for= de <validator " [fieldname] « message d'erreur de >Your here</validator>

Vous pouvez placer les validators entre les étiquettes de forme, ou l'extérieur les étiquettes de forme. Si vous les placez en dehors des étiquettes de forme vous devez indiquer le nom de forme (employant l'attribut de « forme »).

Une forme simple avec un Validator ressemblerait à ceci :

< ? php

// incluent PHP : Forme

inclure (". /phpform.php ») ;

// commencent la forme :

?>

<php : former le name= " exemple " >

police-poids " de " nom " de for= " de <validator vrai de style= de ><p " de required= : audacieux ; couleur : rouge ; le « >Please écrivent votre name</p></validator>

Nom : name= " nom "/> des " textes " de type= de <input

le type= de <input " soumettent " le value= " vont ! « />

</php : form>

< ? php

si == (de $_FORMS->validate (« exemple ») vrai) {

Valeurs de POST'ed d'exposition de //

écho « <pre> » ;

print_r ($_POST) ;

écho « </pre> » ;

} autrement {

Forme d'affichage de //

$_FORMS->display (« exemple ») ;

}

?>

Démo de phase de vue (http://www.phpit.net/demo/phpform%20series/demos/demo2.php)

Comme vous pouvez voir dans le code nous avons créé un Validator qui fait placer l'attribut exigé à « vrai ». Cela signifie que ce Validator vérifie juste si la valeur du champ d'entrée n'est pas vide.

Il y a 5 genres différents de validators :

- Requis : ils sont employés pour s'assurer qu'un champ d'entrée n'est pas vide, comme je démontrais juste.

le >Please " de " champ de for= " de <validator vrai " de required= complètent something</validator>

- Numérique : ils sont employés pour s'assurer qu'un champ d'entrée ne contient seulement des nombres, et rien autrement.

le >Please " de " champ de for= " de <validator vrai " de numeric= complètent something</validator>

- Regex : ils peuvent être employés à specifiy une expression régulière qu'un champ d'entrée doit match.

>Please du regex= le " /test/i " de " champ " de for= de <validator écrivent le « essai » only.</validator>

- Rappel de service : les validators de rappel de service peuvent prendre une fonction de rappel de service qui est courue sur le serveur-côté. Que la fonction de rappel de service est passée la valeur du champ d'entrée, et la fonction doit renvoyer vrai ou faux. Ceci est employé pour la validation vraiment avançée (et elle est probable vous emploierez à peine jamais le Validator de rappel de service)

>Not de " is_email " de callback= de " champ " de for= de <validator un E-mail valide address.validator>

- Nom : le Validator de nom peut être employé pour montrer un message ou une erreur seulement quand vous voulez à. Ils peuvent seulement être montrés quand vous les montrez manuellement employant méthode de trigger_error (la « forme », « errorname »).

les >This de " mymsg " de name= de <validator est mon erreur faite sur commande ! </validator>

Alors dans PHP :

< ? php

$_FORMS->trigger_error (« exemple », « mymsg ») ;

?>

Quand en utilisant des validators, vous voudrez probablement vérifier si une forme valide ou pas. Pour faire ceci, employer la méthode de valider (), comme vu dans la démo 2 :

Si == (de $_FORMS->validate (« exemple ») vrai) {

écho « qu'il valide !  » ;

} autrement {

le faire écho 'doesn « t valident !  » ;

}

Validation de Client-Côté

PHP : La forme produit également automatiquement de la validation de client-côté (Javascript) en utilisant des validators. Elle soutient à la façon des indigènes les validators requis, numériques et de regex, mais elle (entièrement) ne soutient pas le Validator de rappel de service. Ce n'est pas vraiment possible non plus, parce que le Validator de rappel de service se dirige à une fonction sur le serveur-côté. Mais si vous créez une fonction de Javascript avec le même nom que la fonction de rappel de service, il fonctionnera, et il courra la fonction de Javascript que vous avez créée. Ceci te donne la grande puissance, et les moyens que vous pouvez égaliser en utilisant les fonctions avançées et l'Ajax de Javascript pour valider des données.

Si vous voudriez revoir la validation de client-côté dans l'action, aller voir la démo 2, et s'assurer vous faire permettre le Javascript. Vous noterez probablement comment rapidement les erreurs sont retournées, et qu'aucun régénérer se produit du tout. C'est la validation de client-côté.

Conclusion

Dans la présente première partie du PHP : Série de forme je vous ai montré quel PHP : La forme est : un composant extrêmement ordonné de forme de PHP, celui est vraiment utile pour des formes de Web de bâtiment. Je l'avais employé moi-même maintenant pendant quelques mois, et je ne peux pas encore obtenir l'excédent comme grand il est. Il a vraiment simplifié des choses, et je peux me concentrer sur la substance importante. Si vous êtes toujours dedans doute, aller voir le PHP : Former la page de produit pour plus d'information et de démo (http://phpscripts.pallettgroup.com/phpform/?ref=phpit).

Je vous ai également montré exactement ce que sont les validators, et les différents types. Validators sont la partie de PHP la plus importante : Former, et vous les emploierez probablement sous chaque forme. Vous pouvez quelques choses vraiment intéressantes avec eux, et quand vous combinez quelques validators il est possible pour créer une forme extrêmement bloquée.

Dans la prochaine partie j'irai voir des « types de forme », les calibres de forme de PHP : Forme. J'irai voir également placer des valeurs par défaut, en utilisant la méthode de set_value () de PHP : Forme.

Si vous êtes intéressé à acheter PHP : Former, ne pas oublier d'employer le code spécial de bon de PHPit : phpit

PHP : Former la page de produit (http://phpscripts.pallettgroup.com/phpform/?ref=phpit)

Article Source: http://www.articleset.com



About the Author

Dennis Pallett is a young tech writer, with much experience in ASP, PHP and other web technologies. He enjoys writing, and has written several articles and tutorials. To find more of his work, look at his websites at http://www.phpit.net, http://www.aspit.net and http://www.ezfaqs.com. » Read more articles by Dennis Pallett
You are welcome to publish or reprint this article free of charge, provided: