Bonjour,
J'avais utiliser cette class que j'avais trouvé en 2011. Mais je ne sais pas d'ou.
J'aimerais l'utilisée car elle est pas mal, sauf qu'elle me semble pas complete :?
En gros elle fonctionne comme cela.
Pour créer un formulaire je dois ajouter évidement
Pour ajouter un champs textarea, je le fait comme ceciCode:
1
2 <form id="form1" name="form1" method="post" action=""> </form>
Code:
1
2
3
4
5
6
7
8
9
10 <?php $labelName = new Form('label','comment','toto','comment','class',1); $labelName->title = 'Observations'; $labelName->Display(); $name = new Form('textarea','comment',$labelName->title,'comment','class','minDigit:2,strip_tags:'); $name->type = 'textarea'; $name->value = htmlspecialchars($post['comment']); $name->Display(); ?>
Ce qui va afficher ceci
Code:
1
2 <label class="class" id="comment" for="comment">Observations <span class="mandatory" style="color:#ff0000">*</span> </label> <textarea id="comment" name="comment" class="class"></textarea>
Le problème est que j'aimerais ajouter cols et rows pour avoir ceci
Code:
1
2 <textarea id="comment" cols="7" rows="10" name="comment" class="class"></textarea>
Je vais voir ici le constructeur
qui me permet de definir le type, la class, le nom l'ID, les validation.
Par contre, je ne comprends pas comment cette fonction est appelé :( https://github.com/pierrot10/php-for...class.php#L250.
Dans cette fonction, je retrouve une array où je vois bien cols et rows
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 $attributList =array( 'accesskey', 'cols', 'dir', 'disabled', 'lang', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onselect', 'readonly', 'rows', 'style', 'tabindex', 'title', 'wrap' );
Puis ici, ile va construire le textarea https://github.com/pierrot10/php-for...class.php#L279
Code:
1
2
3
4
5
6
7
8
9
10
11 echo '<textarea id="'.$this->id.'" name="'.$this->name.'" class="'.$this->class.'"'; //Affiche les attributs choisis et s'ils sont listés dans $attributList, et ne sont pas vides foreach($this as $attribut => $val){ if(in_array($attribut,$attributList) AND !empty($val)){ echo $attribut = $attribut.'="'.$val.'" '; } } echo '>'.$this->value.'</textarea>';
Ce que je ne comprends pas est comment je peux ajouter cols et rows à partir de là
Code:
1
2
3
4
5
6 <?php $name = new Form('textarea','comment',$labelName->title,'comment','class','minDigit:2,strip_tags:'); $name->type = 'textarea'; $name->value = htmlspecialchars($post['comment']); $name->Display(); ?>
Dans la première ligne, ça me semble pas possible, car le constructeur ne le permet pas, n'est-ce pas?
et cecica ne marchera pas.Code:
1
2 $name->attibut = 'textarea';
Je me demande alors comment je peux le faire?
Il y a aussi ceci SetAttributToAnOption, mais comment puis-je l'utiliser???
Pourriez-vous m'éclairecir?
Milles mercis