Bonjour,
voila, je n'ai pour ainsi dire jamais fait d'objet et je m'y suis éssayé (et surement gamelé ).
J'ai fait des classes avec quelques composants de formulaire HTML :
Code :
- class MyForm
- {
- var $Object = null;
- function Add($object)
- {
- $this->Object[] = $object;
- }
- function Create($name = null, $action = null, $method = 0)
- {
- $tabMethod = array("post", "get" );
- echo "<form name=\"";
- if (!is_null($name))
- echo $name;
- echo "\" id=\"";
- if (!is_null($name))
- echo $name;
- echo "\" action=\"";
- if (!is_null($action))
- echo $action;
- echo "\" method=\"";
- echo $tabMethod[$method];
- echo "\" />\n";
- foreach($this->Object as $object)
- $object->Create();
- echo "</form>\n";
- }
- }
- class MyEdit
- {
- var $Name = null;
- var $Value = null;
- function Create()
- {
- echo "<input type=\"text\" name=\"";
- if (!is_null($this->Name))
- echo $this->Name;
- echo "\" id=\"";
- if (!is_null($this->Name))
- echo $this->Name;
- echo "\" value=\"";
- if (!is_null($this->Value))
- echo $this->Value;
- echo "\" /><br /><br />\n";
- }
- }
|
Ensuite je construis mon formulaire de la sorte :
Code :
- $ed = new MyEdit;
- $ed->Name = "login";
- $ed->Value = "test";
- $form = new MyForm;
- $form->Add($ed);
- $form->Create("test", "toto.php" );
|
Voila, ca fonctionne, du moins ca m'affiche ce que je veux mais je suis sûr que c'est loin d'être parfait.
J'en viens aux questions :
- Quelqu'un aurait un lien avec une bonne introduction du langage objet (je me suis inspiré d'un script)
- Dans ma classe il n'y a pas de constructeur, c'est mal non ?
- Ne pourrais-je pas utiliser l'héritage entre MyForm et MyEdit ? Si oui comment.
- Dernier point, je voudrais aussi utiliser l'héritage pour faire des MyEditText et MyEditPassword par exemple, qui n'ont que le type qui change
Voila, je me suis permis de poster car je n'ai fait qu'extrapoler les trucs que j'ai lu et il doit y avoir de vilaine chose.
Merci d'avoir tout lu.