begin process at 2012 05 27 21:36:26
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Class et Objet ( POO )

 > GÉNÉRATION DE FORMULAIRES HTML PERSONNALISÉS.

GÉNÉRATION DE FORMULAIRES HTML PERSONNALISÉS.


 Information sur la source

Note :
6,5 / 10 - par 2 personnes
6,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Class et Objet ( POO ) Classé sous :formulaire, captcha, classe, générer, php5 Niveau :Initié Date de création :21/05/2010 Vu / téléchargé :7 552 / 1 311

Auteur : beejeridou

Ecrire un message privé
Commentaire sur cette source (17)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Bonjour,

L'archive comprend la classe formulaire qui génère le code HTML du formulaire, la classe de vérification des données, la classe captcha.

Vous pouvez générer les text, textarea, select, radio, checkbox, hidden, submit, captcha ajax.

Vérification des Emails, des num de téléphones, etc.

Tout est parametrable.

Cette source a beaucoup à évoluer. Je compte sur vous pour me donner vos idées afin que tout le monde puisse gérer des formulaires facilement.

La regénération du captcha se fait en ajax par la bibliothèque javascript prototype.
Si vous utilisez Jquery, pensez à JqueryNoConflict() ou à changer le code ajax de la classe (juste une requete ajax, rien de bien méchant).

Comme d'hab, et je sais que c'est un gros défaut, je n'ai pas beaucoup commenté le code source. C'est pour cela que toutes les questions sont les bienvenues.

Dézippez l'archive, et copiez le répertoire formulaire sur votre serveur afin d'exécuter formulaire.php pour l'exemple.

L'architecture fournie est opérationnelle, veuillez bien vérifier vos chemins en cas de changements (notamment pour le captcha).

Le formulaire est complètement personnalisable. (valeurs par défaut en haut de la classe formulaire) + feuille de style. Regardez bien le code source de votre formulaire car il va vous permettre de voir les id générés (préfixe in_$name pour les input par exemple). Ces id vont vous permettre de gérer des cas particuliers de mise en forme css.

Je suis de nouveau en train de me perdre dans mes explications... le mieux est de tester.

Source

  • //Comment générer le formulaire:
  • require_once("classes/formulaire/class.Formulaire.php");
  • $form=new Formulaire("formulaire.php");
  • $fields=array(
  • ""=>array("type"=>"comment", "name"=>"entete", "value"=>"<br />(*) Champs obligatoires"),
  • "Civilité"=>array("type"=>"radio", "name"=>"civil", "label"=>"1",
  • "valuesRadio"=>array("Mme", "Mlle", "Mr"), "checkedRadio"=>"2"),
  • "Nom"=>array("type"=>"text", "label"=>"1", "name"=>"nom", "required"=>"1"),
  • "Email"=>array("type"=>"email", "label"=>"1", "name"=>"email", "required"=>"1"),
  • "Code Postal"=>array("type"=>"text", "label"=>"1", "name"=>"cp"),
  • "Téléphone"=>array("type"=>"phone", "label"=>"1", "name"=>"tel", "required"=>"1"),
  • "Objet"=>array("type"=>"list", "label"=>"1", "name"=>"objet", "required"=>"1",
  • "valuesList"=>array("Option 1", "Option 2"), "selectedList"=>"1"),
  • "Message"=>array("type"=>"textarea", "label"=>"1", "name"=>"msg"),
  • "Captcha"=>array("type"=>"captcha", "label"=>"1", "name"=>"captcha", "required"=>"1"),
  • "Envoyer"=>array("type"=>"submit", "name"=>"submit")
  • );
  • $form->setTabFields($fields);
  • $form->createForm();
  • $tabValidated = $form->verifValidate();
  • if($tabValidated)
  • {
  • //TRAITEMENT DES INFOS
  • var_dump($tabValidated);
  • }
  • echo $form->getMsg();
  • echo $form->displayForm();
//Comment générer le formulaire:
require_once("classes/formulaire/class.Formulaire.php");

$form=new Formulaire("formulaire.php");
$fields=array(
	""=>array("type"=>"comment", "name"=>"entete", "value"=>"<br />(*) Champs obligatoires"),
	"Civilité"=>array("type"=>"radio", "name"=>"civil", "label"=>"1",
		"valuesRadio"=>array("Mme", "Mlle", "Mr"), "checkedRadio"=>"2"),
	"Nom"=>array("type"=>"text", "label"=>"1", "name"=>"nom", "required"=>"1"),
	"Email"=>array("type"=>"email", "label"=>"1", "name"=>"email", "required"=>"1"),
	"Code Postal"=>array("type"=>"text", "label"=>"1", "name"=>"cp"),
	"Téléphone"=>array("type"=>"phone", "label"=>"1", "name"=>"tel", "required"=>"1"),
	"Objet"=>array("type"=>"list", "label"=>"1", "name"=>"objet", "required"=>"1", 
		"valuesList"=>array("Option 1", "Option 2"), "selectedList"=>"1"),
	"Message"=>array("type"=>"textarea", "label"=>"1", "name"=>"msg"),
	"Captcha"=>array("type"=>"captcha", "label"=>"1", "name"=>"captcha", "required"=>"1"),
	"Envoyer"=>array("type"=>"submit", "name"=>"submit")
);
$form->setTabFields($fields);
$form->createForm();

$tabValidated = $form->verifValidate();
if($tabValidated) 
{
	//TRAITEMENT DES INFOS
	var_dump($tabValidated);
}
echo $form->getMsg();
echo $form->displayForm();


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources du même auteur

Source avec Zip CLASSE DE REDIMENSIONNEMENT D'IMAGES PHP
Source avec Zip CLASSE D'UPLOAD DE FICHIER PHP

 Sources de la même categorie

Source avec Zip GÉNÉRATION AUTOMATIQUE DE FICHIER .CLASS.PHP EN FONCTION D'U... par ig3
CLASSE D'OBJET DE CRYPTAGE ET DÉCRYPTAGE DE CHAINES DE CARAC... par 8Tnerolf8
Source avec Zip MY.DEVIANTART API par inwebo
CLASSE DE GESTION DE "VARIABLES GLOBALES D'ENVIRONNEMENT" par pifou25
Source avec Zip COLLECTION.CLASS.MIN.PHP par thunderhunter

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture FORM TO MAIL AVEC PROTECTION PAR TOKEN ET CAPTCHA CONTRÔLES ... par cod57
Source avec Zip Source avec une capture FORMULAIRE VERS COURRIEL BASIQUE AVEC CONTRÔLE CAPTCHA ANTI ... par cod57
Source avec Zip [PHP5.2] CLASSE PDO par hornetbzz
CLASSE DE CRÉATION DE FORMULAIRE par spoonisback
Source avec Zip Source avec une capture [PHP5] CLASSE FORMULAIRE par malalam

Commentaires et avis

Commentaire de beejeridou le 21/05/2010 12:08:36

petite erreur:
veuillez remplacer la ligne 126 de la classe formulaire par celle ci:

$valueField = htmlspecialchars(stripslashes($_POST[$name]));

Commentaire de alex67cv le 24/05/2010 09:34:35 6/10

Bonjour,je me permet de vous écrire car comme avec beaucoup de codes scripts que je prend...et bien lorsque pour tel ou tel raison je désire l'effacer de mon repertoire et bien impossible...j'ai beau mettre les schmods à 777 et bien non impossible d'effacer le repertoire que j'ai nommer "formulaire"...et ca m'arrive souvent...auparavant j'étais obliger de renommer tout les dossier en 'divers' ou autres...car aucun moyen de les effacer ses dossiers et fichiers...
J'aimerais bien qu'on m'explique pourquoi...et comment l'effacer...
Le script à l'air sincèrement mais ne correspond pas à ce que je recherché...
Je remercie bien évidemment tout les programmateurs qui ont la gentillesse de nous offrir gracieusement leurs scripts et créations....mais je ne trouve pas du tout normal qu'on nous oblige et interdit d'effacer les codes et scripts qu'on a placer dans nos répertoires web...
Je ne peux à chaque fois renommer des répertoires en je sais pas quoi...
Alors s'il vous plait,ayez la gentillesse de me dire comment effacer ses dossiers de mon répertoire web...
Dans l'attente d'une réponse rapide,Merci d'avance pour tout...
Cordialement

Commentaire de AlexB13016 le 24/05/2010 13:56:57

Slt =),
un bon script (y) félicitation =D, pas encore regarder les codes j'le ferais se soir .

ALEX67CV, Sa m'arrive la même chose mais pas seulement avec des script de code source, avec mes propres dossiers, j'pense que c'est filezilla qui a un bug ou quoi, mais ce diagnostique est inpréçi j'suis pas un connaisseur x).

Commentaire de beejeridou le 24/05/2010 14:27:02

Salut Alex (67),
Lorsque tu effaces un dossier sur ton serveur, il faut bien regarder le retour serveur (fenêtre du haut). Des fois, on a beau effacer ce que l'on veut, ca marche mais on le voit toujours affiché. Pour cela, il faut appuyer sur la touche F5 (dans filezilla, hein).
Sinon, tu nous as pas dit mais c'est bien sur un serveur en ligne que tu as ce problème? quel serveur? free, ovh? quel est le message d'erreur?

Sinon, ne t'inquiètes pas, les gentils développeurs qui mettent à contribution leurs codes ne contrôlent pas à distance les serveurs de ceux qui les utilisent!

Commentaire de alex67cv le 24/05/2010 14:57:32

Slt à tous et merci,au faite je suis chez SFR...et j'ai effectivement Filezilla...mais j'ai beau faire F5 et essayer de supprimer le dossier...rien n'y fait impossible à effacer répertoire...
Ca me met en Haut dans la fenetre" Réponse : 550 Can't remove directory: Directory not empty "
Donc je ne comprend pas (je sais que 'Empty 'veut dire vide mais pas +..)...j'ai souvent ca et le seul moyen est de renommer tout avec divers autre nom de dossier...la galère...

Et pour AlexB131016 quand je disais "code script" au faite je pensé pas au site mais réellement au scripts et code scripts=codes source...ça m'est arriver très souvent et peu importe d'où je l'ai télécharger...mais jamais avec mes propres dossiers par contre...
Mais donc je vois que je ne suis pas le seul à avoir ce problème la...
Si vous pouviez m'aider,je vous en remercie d'avance...

Commentaire de beejeridou le 24/05/2010 15:28:06

Alors,
J'ai regardé vite fait sur le net et j'ai trouvé une personne qui a eu le même problème que toi.

http://forum.lescigales.org/topic475-resolu-550-cant-remove-directory-directory-not-empty.html

Il s'agirait du fait qu'il y a des fichiers cachés comme des .htaccess. Il y en a 3(je crois) dans la source que j'ai donné.
Dis nous si ca a résolu ton problème!

Commentaire de tipite le 24/05/2010 17:01:44

Bonjour,

Je suis un novice et j'ai essayé le code du formulaire et j'ai un message d'erreur, Warning: putenv() [function.putenv]: Safe Mode warning: Cannot set environment variable 'GDFONTPATH' - it's not in the allowed list in C:\wamp\www\MDP\mdp\formulaire\Formulaire\classes\formulaire\class.Captcha.php  on line 27, que faire.

Merci

Commentaire de beejeridou le 24/05/2010 17:08:24

Ah oué, ca c'est quand il n'arrive pas à redéfinir la constante GDFONTPATH (il me semble).

Peux-tu essayer de commenter (ou carrément supprimer) cette ligne? (la ligne 27 de la classe captcha).

Dis moi si ca fonctionne.

Commentaire de rayman223 le 24/05/2010 17:09:22

Tu as laissé passer des "parse error"

Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /XXX/Formulaire/classes/formulaire/class.Formulaire.php on line 8

ou alors il faut php 5 obligatoirement?
si oui alors sa vient de chez moi :p mais je n'ai pas vraiment le temps maintenant d'approfondir.

Commentaire de beejeridou le 24/05/2010 17:15:35

Oui, tu dois être en php5 obligatoirement. Le php4 est révolu!

Commentaire de alex67cv le 24/05/2010 17:25:59

Bon...alors il s'agit bien de ses fameux fichiers .htaccess,mais même en forçant l'affichage des fichiers cachés et bien rien,on ne les voit comme même pas...car cette fonction était déjà activée puisque j'avais déjà eu avant à plusieurs reprises ce problème là...ça vient de chez SFR le problème( comme tant d'autres problème d'ailleurs...) et donc rien à faire...
Mis à part désactiver le site en question en ayant sauvegarder bien sur les répertoires (sauf celui du Formulaire...lol...) et réactiver ensuite,pour rentre de nouveau id et mdp puis remettre les répertoires...tout un truc...purée...
En bref,encore une fois SFR me fait des misère...en temps normal même pas j'utiliserais leurs pages perso mais ayant déménager et donc perdu par la même occasion mon hébergement pro chez 1and1 et bien j'ai dû pour occuper mes journées reprendre un peu la création et les sites en main,en utilisant leurs connerie de pages perso...et puis parce que l'informatique pour moi est une passion...
Donc voilà problème résolu comme même,encore un grand merci à vous tous pour votre aide et spécialement Merci à tous les développeurs pour ce qu'ils nous offrent et permettent de faire...sans oublier Codes Sources bien évidemment...lol...
A bientôt.

Commentaire de tipite le 24/05/2010 17:42:49

J'ai supprmé la ligne 27 putenv('GDFONTPATH='.realpath('.')); et ça fonctionne et j'ai bien la version 5.3 de PHP.

Merci

Commentaire de Morphinof le 07/06/2010 14:55:36 7/10

Le code est propre mais je le trouve tres lourd !
Je m'explique : quand j'ai vu ta source ce qui m'a interesse c'etait la conception, et la j'ai ete telement decu ! Tu as fait un god object Formulaire et c'est tout !
Tu pourrais alleger le code en creant plus de classe et en utilisant l'heritage du genre une classe Formulaire contenant une liste d'objet Fields etc etc. Tu peux meme pousser plus loin en gerant aussi le css sous la forme d'une classe.
Tu classes pourtant ta source dans la categorie Class et Objet (POO) sans exploiter les possibilites de l'objet ! :(

Commentaire de Tacot le 29/08/2010 11:24:31

Bonjour,
ce script a l'air pas mal, cependant où met-on l'adresse mail pour recevoir le mail du formulaire ???
Merci pour la réponse.
Cordialement

Commentaire de beejeridou le 30/08/2010 10:45:30

Cette classe ne gère pas l'envoi du formulaire, juste la mise en place des champs ainsi que la vérification de ceux-ci.

Vous pouvez récupérer les infos remplies par le formulaire grâce à cette ligne:

var_dump($tabValidated);

Cordialement,
//Beejeridou

Commentaire de petit_lapin le 15/02/2011 10:20:56

Bonjour, c'est le 45 ème formulaire captcha que j'essais et qui ne fonctionne pas, savez vous une adresse avec un capcha fait par un pro, même si'l faut payer car les amateurs apparement ne savent pas expliquer
array(10) { ["entete"]=> string(29) "
(*) Champs obligatoires" ["civil"]=> string(1) "0" ["nom"]=> string(3) "tut" ["email"]=> string(20) "et_emilian@yahoo.com" ["cp"]=> string(5) "49240" ["tel"]=> string(10) "0952640101" ["objet"]=> string(7) "Option1" ["msg"]=> string(9) "sdfsdfsdf" ["captcha"]=> string(5) "cKAMn" ["submit"]=> string(0) "" }
Formulaire envoyé avec succès.

Commentaire de beejeridou le 16/02/2011 11:00:04

Il existe des logiciels qui gèrent les captchas, je vous invite à en consulter la liste.

Cependant, quels sont les messages d'erreurs rencontrés? Avez-vous gardé la même arborescence que l'exemple fourni?

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Pb de récupération d'un tableau passé par formulaire depuis php5 [ par murrigane ] Bonjour !J'esp&#232;re que j'ai intitul&#233; le sujet de mon message correctement ! Je vais developper et expliquer ce qui se passe (pas, du moins pl [PHP5] Etendre une classe prédéfinie [ par ZuGbEn ] Bonjour !Je débute plus ou moins dans la programmation orientée objet, et je souhaite faire une classe qui, à partir d'un DomNode existant, ajoute des classeforms.php [ par skulls94 ] bonjour,je dois realiser un formulaire qui interagit avec une bdd. Pour cela j'utilise la classe classeforms.php voir: http://www.toutestfacile.com/cl Comment générer automatiquement des caracteres dans un formulaire ? [ par flaydeer ] Bonjour,comment générer automatiquement des caracteres  textes+chiffres dans une case d'un formulaire et la reporter sur le formulaire suivant ?MerciF captcha [ par aamsa ] Bonsoir a tous, j'ai cree une formulaire et j'aimerais ajouter un captcha anti-spam, j'ai googlee mais j'ai pas comprendre comment fonctionne ce captc Fonctionnement SDO [ par guill76 ] Bonjour,Je viens de découvrir un petit peu l'extension SDO de PHP5 que j'ai récupérée en installant PHP5.2.5 il ya environ un semaine et dans cette ex Souci formulaire contact php avec captcha [ par snip74 ] Bonjour, je fait appel a vous car je pète un câble lol. Voila j'ai trouvé un système de captcha je les mis sur mon formulaire de contact et rien ne formulaire php htlm / captcha [ par djbabou ] Bonjour, a tous J'ai développé un formulaire dans lequel j'ai intégrer un captcha image. Comme tous captcha normalement construit, après soumission d Validation de formulaire avec Adobe Spry et Zend_captcha [ par maryleo ] Bonjour à tous! Excusez-moi de vous déranger, mais cela fait trois jours que je suis coincé sur un projet. Je développe actuellement un site web dans besoin pour inserer captcha [ par gilou312 ] bonjour, je voudrais inserer une captcha pour mon formulaire de contact, j'ai essayé de trouver des formulaires avec captcha integrer et verification


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,686 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales