begin process at 2010 03 18 23:08:49
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Class et Objet ( POO )

 > CLASSE FORMULAIRE

CLASSE FORMULAIRE


 Information sur la source

Note :
9 / 10 - par 1 personne
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Class et Objet ( POO ) Classé sous :formulaire, objet form, classe formulaire, formulaire securise Niveau :Débutant Date de création :15/06/2009 Date de mise à jour :15/06/2009 16:11:32 Vu / téléchargé :3 182 / 414

Auteur : wolfcyber95

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

 Description

Classe en PHP permettant de générer un formulaire anti robots (les noms des champs sont crypter en md5 pour éviter la reconnaissance par les robots).

Source

  • EXPLICATIONS DES METHODES PUBLIQUES :
  • --------------------------------------------------------------------------------------------------------------------
  • Constructeur
  • --------------------------------------------------------------------------------------------------------------------
  • Initialise le formulaire
  • Formulaire(Nom du formulaire, ID du style CSS du formulaire, Page de destination du formulaire "Facultatif")
  • - exemple :
  • $form = new Formulaire("form1", "form_style")
  • --------------------------------------------------------------------------------------------------------------------
  • printInput
  • --------------------------------------------------------------------------------------------------------------------
  • Creation d'un champ input de type texte
  • printInput (Nom du champ, Taille du champ, Longueur maximum de caractere, Valeur par défaut "Optionnel")
  • - exemple :
  • printInput ("email", 30, 45, "Votre adresse email")
  • - Retourne : chaine (HTML)
  • --------------------------------------------------------------------------------------------------------------------
  • printInputPass
  • --------------------------------------------------------------------------------------------------------------------
  • Creation d'un champ input de type password
  • printInputPass (Nom du champ, Taille du champ, Longueur maximum de caractere)
  • - exemple :
  • printInputPass ("MotDePasse", 10, 8)
  • - Retourne : chaine (HTML)
  • --------------------------------------------------------------------------------------------------------------------
  • printCaptcha
  • --------------------------------------------------------------------------------------------------------------------
  • Creation d'une image de code de verification sur 6 caractères (pour éviter les robots)
  • printCaptcha ()
  • - Retourne : chaine (HTML)
  • --------------------------------------------------------------------------------------------------------------------
  • printTextArea
  • --------------------------------------------------------------------------------------------------------------------
  • Creation d'une zone de texte
  • printTextArea (Nom de la zone, Nombre de colonnes, Nombre de lignes, Valeur par défaut "Optionnel")
  • - exemple :
  • printTextArea ("Descriptif", 30, 4, "Votre description")
  • - Retourne : chaine (HTML)
  • --------------------------------------------------------------------------------------------------------------------
  • printSubmit
  • --------------------------------------------------------------------------------------------------------------------
  • Creation d'un bouton submit (1 seul autorisé par formulaire)
  • printSubmit (Valeur par défaut "Optionnel")
  • - exemple :
  • printSubmit ("Valider le formulaire")
  • - Retourne : chaine (HTML)
  • --------------------------------------------------------------------------------------------------------------------
  • printSelect
  • --------------------------------------------------------------------------------------------------------------------
  • Creation d'une liste deroulante
  • printSelect (Nom de la liste, Liste sous forme de tableau associatif, Clé selectionnée par défaut "Optionnel")
  • - exemple (Liste des categories avec Footing selectionné par defaut) :
  • printSelect ("Activite", array("1" => "Golf", "2" => "Footing", "3" => "Rugby"), "2")
  • - Retourne : chaine (HTML)
  • --------------------------------------------------------------------------------------------------------------------
  • printRadio
  • --------------------------------------------------------------------------------------------------------------------
  • Creation de groupe de bouton radio
  • printRadio (Nom du groupe, Liste de boutons sous forme de tableau associatif,
  • Clé selectionnée par défaut "Optionnel", Retour à la ligne après chaque bouton (true/false) "Optionnel")
  • - exemple groupe de boutons vertical :
  • printRadio ("radiochoix", array("1" => "Choix 1", "2" => "Choix 2", "3" => "Choix 3"), "1", false);
  • - exemple groupe de boutons horizontal :
  • printRadio ("radiochoix", array("1" => "Choix 1", "2" => "Choix 2", "3" => "Choix 3"), "1", true);
  • - Retourne : chaine (HTML)
  • --------------------------------------------------------------------------------------------------------------------
  • printBegin
  • --------------------------------------------------------------------------------------------------------------------
  • Ouverture du formulaire OBLIGATOIRE
  • printBegin ()
  • - Retourne : chaine (HTML)
  • --------------------------------------------------------------------------------------------------------------------
  • printEnd
  • --------------------------------------------------------------------------------------------------------------------
  • Fermeture du formulaire OBLIGATOIRE
  • printEnd ()
  • - Retourne : chaine (HTML)
  • --------------------------------------------------------------------------------------------------------------------
  • formValid
  • --------------------------------------------------------------------------------------------------------------------
  • Savoir si le formulaire à été validé
  • formValid (Variables global $_POST)
  • - Utilisation :
  • if (formValid ($_POST)) { ..... }
  • - Retourne : BOOLEAN
  • --------------------------------------------------------------------------------------------------------------------
  • getValue
  • --------------------------------------------------------------------------------------------------------------------
  • Récupérer une valeur d'un champ (après validation)
  • getValue(Nom du champ)
  • - Exemple :
  • $nom = getValue("email");
  • - Retourne : Chaine
  • --------------------------------------------------------------------------------------------------------------------
  • verifEmail
  • --------------------------------------------------------------------------------------------------------------------
  • Permet de verifier la validité d'un email
  • verifEmail(Adresse email a verifier)
  • - Exemple :
  • if (verifEmail($email)) EMAIL CORRECT
  • else EMAIL INCORRECT
  • - Retourne : BOOLEAN
  • --------------------------------------------------------------------------------------------------------------------
  • verifUrl
  • --------------------------------------------------------------------------------------------------------------------
  • Permet de verifier la validité d'une URL
  • verifUrl(URL a verifier)
  • - Exemple :
  • if (verifUrl($url)) URL CORRECT
  • else URL INCORRECT
  • - Retourne : BOOLEAN
  • --------------------------------------------------------------------------------------------------------------------
  • verifNumeric
  • --------------------------------------------------------------------------------------------------------------------
  • Permet de verifier qu'une valeur est numerique et son nombre de caracteres
  • verifNumeric(Chaine a verifier, Taille minimale de la chaine)
  • - Exemple :
  • if (verifNumeric($num, 6)) TYPE NUMERIQUE ET TAILLE DE 6 CARACTERES
  • else TYPE NON NUMERIQUE OU TAILLE DIFFERENTE DE 6 CARACTERES
  • - Retourne : BOOLEAN
  • --------------------------------------------------------------------------------------------------------------------
  • verifCaptcha
  • --------------------------------------------------------------------------------------------------------------------
  • Permet de verifier la validité du champ de verification captcha
  • verifCaptcha()
  • - Exemple :
  • if (verifCaptcha()) CAPTCHA OK
  • else CAPTCHA NOK
  • - Retourne : BOOLEAN
  • --------------------------------------------------------------------------------------------------------------------
  • CreateCaptcha
  • --------------------------------------------------------------------------------------------------------------------
  • Methode permettant de genere l'image captcha de type PNG
  • CreateCaptcha(Chaine du captcha)
  • - Exemple :
  • header("Content-Type: image/png");
  • include("Formulaire.lib.php");
  • session_start();
  • Formulaire::CreateCaptcha($_SESSION['captcha']);
EXPLICATIONS DES METHODES PUBLIQUES :

--------------------------------------------------------------------------------------------------------------------
                                                 Constructeur
--------------------------------------------------------------------------------------------------------------------
Initialise le formulaire
   
    Formulaire(Nom du formulaire, ID du style CSS du formulaire, Page de destination du formulaire "Facultatif")
   
    - exemple :
        $form = new Formulaire("form1", "form_style")


--------------------------------------------------------------------------------------------------------------------
                                                 printInput
--------------------------------------------------------------------------------------------------------------------
Creation d'un champ input de type texte
   
    printInput (Nom du champ, Taille du champ, Longueur maximum de caractere, Valeur par défaut "Optionnel")
   
    - exemple :
        printInput ("email", 30, 45, "Votre adresse email")
   
    - Retourne : chaine (HTML)


--------------------------------------------------------------------------------------------------------------------
                                                printInputPass
--------------------------------------------------------------------------------------------------------------------
Creation d'un champ input de type password
   
    printInputPass (Nom du champ, Taille du champ, Longueur maximum de caractere)
   
    - exemple :
        printInputPass ("MotDePasse", 10, 8)
   
    - Retourne : chaine (HTML)


--------------------------------------------------------------------------------------------------------------------
                                                 printCaptcha
--------------------------------------------------------------------------------------------------------------------
Creation d'une image de code de verification sur 6 caractères (pour éviter les robots)
   
    printCaptcha ()
   
    - Retourne : chaine (HTML)


--------------------------------------------------------------------------------------------------------------------
                                                 printTextArea
--------------------------------------------------------------------------------------------------------------------
Creation d'une zone de texte
   
    printTextArea (Nom de la zone, Nombre de colonnes, Nombre de lignes,  Valeur par défaut "Optionnel")
   
    - exemple :
        printTextArea ("Descriptif", 30, 4,  "Votre description")
   
    - Retourne : chaine (HTML)


--------------------------------------------------------------------------------------------------------------------
                                                 printSubmit
--------------------------------------------------------------------------------------------------------------------
Creation d'un bouton submit (1 seul autorisé par formulaire)
   
    printSubmit (Valeur par défaut "Optionnel")
   
    - exemple :
        printSubmit ("Valider le formulaire")
   
    - Retourne : chaine (HTML)


--------------------------------------------------------------------------------------------------------------------
                                                 printSelect
--------------------------------------------------------------------------------------------------------------------
Creation d'une liste deroulante
   
    printSelect (Nom de la liste, Liste sous forme de tableau associatif, Clé selectionnée par défaut "Optionnel")
   
    - exemple (Liste des categories avec Footing selectionné par defaut) :
        printSelect ("Activite", array("1" => "Golf", "2" => "Footing", "3" => "Rugby"), "2")
   
    - Retourne : chaine (HTML)


--------------------------------------------------------------------------------------------------------------------
                                                  printRadio
--------------------------------------------------------------------------------------------------------------------
Creation de groupe de bouton radio
   
    printRadio (Nom du groupe, Liste de boutons sous forme de tableau associatif,
                Clé selectionnée par défaut "Optionnel", Retour à la ligne après chaque bouton (true/false) "Optionnel")
   
    - exemple groupe de boutons vertical :
        printRadio ("radiochoix", array("1" => "Choix 1", "2" => "Choix 2", "3" => "Choix 3"), "1", false);
    - exemple groupe de boutons horizontal :
        printRadio ("radiochoix", array("1" => "Choix 1", "2" => "Choix 2", "3" => "Choix 3"), "1", true);
   
    - Retourne : chaine (HTML)


--------------------------------------------------------------------------------------------------------------------
                                                  printBegin
--------------------------------------------------------------------------------------------------------------------
Ouverture du formulaire OBLIGATOIRE
   
    printBegin ()
   
    - Retourne : chaine (HTML)
   

--------------------------------------------------------------------------------------------------------------------
                                                  printEnd
--------------------------------------------------------------------------------------------------------------------
Fermeture du formulaire OBLIGATOIRE
   
    printEnd ()
   
    - Retourne : chaine (HTML)
   
   
--------------------------------------------------------------------------------------------------------------------
                                                  formValid
--------------------------------------------------------------------------------------------------------------------
Savoir si le formulaire à été validé
   
    formValid (Variables global $_POST)
   
    - Utilisation :
        if (formValid ($_POST)) { ..... }
   
    - Retourne : BOOLEAN


--------------------------------------------------------------------------------------------------------------------
                                                  getValue
--------------------------------------------------------------------------------------------------------------------
Récupérer une valeur d'un champ (après validation)
   
    getValue(Nom du champ)
   
    - Exemple :
        $nom = getValue("email");
   
    - Retourne : Chaine


--------------------------------------------------------------------------------------------------------------------
                                                  verifEmail
--------------------------------------------------------------------------------------------------------------------
Permet de verifier la validité d'un email
   
    verifEmail(Adresse email a verifier)
   
    - Exemple :
        if (verifEmail($email)) EMAIL CORRECT
        else  EMAIL INCORRECT
   
    - Retourne : BOOLEAN


--------------------------------------------------------------------------------------------------------------------
                                                  verifUrl
--------------------------------------------------------------------------------------------------------------------
Permet de verifier la validité d'une URL
   
    verifUrl(URL a verifier)
   
    - Exemple :
        if (verifUrl($url)) URL CORRECT
        else  URL INCORRECT
   
    - Retourne : BOOLEAN


--------------------------------------------------------------------------------------------------------------------
                                                  verifNumeric
--------------------------------------------------------------------------------------------------------------------
Permet de verifier qu'une valeur est numerique et son nombre de caracteres
   
    verifNumeric(Chaine a verifier, Taille minimale de la chaine)
   
    - Exemple :
        if (verifNumeric($num, 6)) TYPE NUMERIQUE ET TAILLE DE 6 CARACTERES
        else   TYPE NON NUMERIQUE OU TAILLE DIFFERENTE DE 6 CARACTERES
   
    - Retourne : BOOLEAN


--------------------------------------------------------------------------------------------------------------------
                                                  verifCaptcha
--------------------------------------------------------------------------------------------------------------------
Permet de verifier la validité du champ de verification captcha
   
    verifCaptcha()
   
    - Exemple :
        if (verifCaptcha()) CAPTCHA OK
        else CAPTCHA NOK
       
    - Retourne : BOOLEAN


--------------------------------------------------------------------------------------------------------------------
                                                  CreateCaptcha
--------------------------------------------------------------------------------------------------------------------
Methode permettant de genere l'image captcha de type PNG
   
    CreateCaptcha(Chaine du captcha)
   
    - Exemple :
        header("Content-Type: image/png");
        include("Formulaire.lib.php");
        session_start();
        Formulaire::CreateCaptcha($_SESSION['captcha']);

 Conclusion

NE PAS OUBLIER D'ACTIVER LA LIBRAIRIE GD2


Pour l'activer le module gd de PHP dans php.ini :

Remplacer ;extension=php_gd2.dll
en extension=php_gd2.dl

 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


 Historique

15 juin 2009 16:11:36 :
Oublie de la source LOL

 Sources du même auteur

Source avec Zip GESTION D'ESPACE ADMINISTRATION

 Sources de la même categorie

Source avec Zip CLASSE TABLE HTML DYNAMIQUE par LDDL
Source avec Zip GÉNÉRATEUR DE COUCHE DAO POUR SITE WEB À PARTIR D'UNE BASE D... par alexfool
Source avec Zip [PHP5.2] CLASSE PDO par hornetbzz
Source avec Zip POO - LOGGING PACKAGE par Waredan
POO - OBJECT CLASS par Waredan

 Sources en rapport avec celle ci

TESTEUR DE REGEX par hornetbzz
Source avec Zip CRAWLER DE SITE EN PHP par Mcjo
Source avec Zip FORMULAIRE EMAIL AVEC PIECE JOINTE REPRIS DE LITTLEBUBU par cfndiaye
FORMULAIRE DE RÉCUPÉRATION D'EMAILS par oleiade
CLASS DE CONTRÔLE DE FORMULAIRE par baxterio

Commentaires et avis

Commentaire de bogeux le 15/06/2009 16:07:45

Bjr ^^

Il ne manquerait pas les sources par hasard ?

Commentaire de wolfcyber95 le 15/06/2009 16:12:14

Slt,

Oups petit oubli, merci ....

Commentaire de Arto_8000 le 15/06/2009 16:12:33

T'aurais pas oublier de mettre la source par hasard ?

Commentaire de wolfcyber95 le 15/06/2009 16:15:56

Je viens de la mettre dsl

Commentaire de twisteurwin le 16/06/2009 11:14:27 9/10

wolfcyber95 sympa ta source :) à compléter par les checkbox assez sympa merci

Commentaire de aKheNathOn le 16/06/2009 23:51:11

Le code source est sympa, c'est bien de ne pas avoir mélangé le html et le code pour la partie mise en page du formulaire et c'est efficace pour obfusquer les noms des champs, sauf que vu leur position ou libellés on pourrait facilement faire la correspondance.

La protection anti-robots réside principalement dans le captcha car sinon il pourrait être envoyé automatiquement, et après intervention humaine les champs pourraient être remplis automatiquement.

L'algo de captcha est très faible, fond blanc sans variations, texte avec police par défaut, c'est très facile de le lire par un robot.

Pas de vérification du referer, donc possibilité de faire du cross-site (avec la faille du captcha).

Du coup, pour résumer ta classe obfusque les noms donc complique le javascript si on voudrait en faire, par contre elle ne protège pas plus qu'un formulaire avec captcha, or ce que tu propose est perfectible.

J'espère que mes commentaires t'aideront à faire évoluer ta classe qui est cependant intéressante.

Bonne prog,
akh

Commentaire de lola0608 le 01/07/2009 13:18:49

Salut,
il n'y a pas moyen de mentionner comment gérer les évenements( onclick, onchange, onblur ...).
ça sera sympa si quelqun pourra m'aider.
merci

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

formulaire mail [ par arnaud ] quand je recoit un formulaire mail je trouve le fichier postdata.att ... comment fair pour l'avoir sans les 20% et les "+"merciarnaud php et html [ par Vinz ] Salut,Voila, j'utilise un formulaire qui me lance un php. Dans ce formulaire j'ai un <input type=file name='monFile'>.Mon probleme c'est que j'a Formulaire PHP3 + PJ [ par Jiboule ] Salut à tous ! Quelqu'un peut-il me sauver ? J'ai fait un formulaire en HTML avec une dizaine de champs + la possibilité de joindre un fichier. Je ne Formulaire PHP3 + PJ [ par Jiboule ] Salut à tous ! Quelqu'un peut-il me sauver ? J'ai fait un formulaire en HTML avec une dizaine de champs + la possibilité de joindre un fichier. Je ne code simple pour formulaire [ par bernard ] bonsoir à tous, je suis débutant de chez débutant et j'ai besoin d'aide.je voudrais réaliser un programme en php.il s'agit d'un formulaire où le visit Formulaire + fichier externe [ par koko ] J'ai un petit formulaire avec 2 text (<INPUT TYPE="text") et un button. Quand je clique sur le button, il doit mettre les 2 text dans un fichier ex Formulaire et SQL [ par Christophe46 ] Salut,J'espère trouver de l'aide sur ce forum,J'ai fait une base de données MySql, avec une table et des champs comme nom, prenom, telephone, adresse, Formulaire et SQL [ par Christophe46 ] Salut,J'espère trouver de l'aide sur ce forum,J'ai fait une base de données MySql, avec une table et des champs comme nom, prenom, telephone, adresse, Formulaire [ par benett ] Bonjour à tous,J'ai une petite question :Dans un formulaire, certaine valeurs s'obtiennent par recopie et proviennent d'une autre page,comment peut-on Formulaire [ par benett ] Bonjour à tous,J'ai une petite question :Dans un formulaire, certaine valeurs s'obtiennent par recopie et proviennent d'une autre page,comment peut-on


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
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