Bonjour,
félicitations pour ta persévérance.
Par contre, pourquoi surcharges-tu checkbox ?
Tu pourrais créer une méthode multipleCheckboxes ?
De cette manière, si tu as besoin de l'ancienne version de checkbox, il
n'y aura besoin de faire coexister les 2 helpers.
(c'est juste une impression)
Bon courage,
Lionel
foxmask a écrit :
> me suis fait un helper qui hérite de FormHelper et qui correspond à
> l'usage que je me suis fait des checkbox
>
> je passe le nom du model (le meme que celui que j'indique dans $form-
>
>> create) du formulaire, le nom de la checkbox, la valeur de celle ci,
>>
> la liste de valeur et le libelle de ma checkbox
>
> class PcformHelper extends FormHelper
> {
>
> private $__out = array();
>
> function checkbox($modelName, $colName, $value, $values=array(),
> $title) {
>
> $this->__out = array();
>
> $options['value'] = $value;
> $options['name'] = 'data['.$modelName.']['.$colName.'][]';
>
> $selected_str = '';
> if ( in_array($value,$values ) ) {
> $selected_str = 'checked="checked"';
> $options['checked']='checked';
> }
>
> $options = $this->__initInputField($colName, $options);
>
>
> $this->__secure();
>
> $this->__out = '<input type="checkbox" value="'.$value.'"
> name="data['.$modelName.']['.$colName.'][]" '.$selected_str.'/> '.
> $title;
>
> return $this->__out;
>
>
> }
> }
>
> ?>
>
>
> Ce qui fait que cela fonctionne avec le component Security c'est le
> $this->_secure() qui créé le hashage avec $options.
>
> ouala enfin une issue...
>
>
> On 4 mar, 17:20, foxmask <[EMAIL PROTECTED]> wrote:
>
>> J'essairai cela dès que possible.
>> merci.
>>
>> On 4 mar, 15:33, avairet <[EMAIL PROTECTED]> wrote:
>>
>>
>>> @fowmask, voici un petit snippet sur les checkboxes multiples, je ne
>>> sais pas s'il fait ce que tu souhaites, mais bon au cas
>>> où...http://cakeforge.org/snippet/detail.php?type=snippet&id=190
>>>
>>> On 3 mar, 18:53, francky06l <[EMAIL PROTECTED]> wrote:
>>>
>>>> Tu peux toujours declarer un schema dans un model sans Table. Je fais
>>>> cela pour permettre des veirfications sur des champs que je saisi mais
>>>> ne garde pas.
>>>>
>>>> On Mar 2, 8:40 am, foxmask <[EMAIL PROTECTED]> wrote:
>>>>
>>>>> Bonjour Frankcy06,
>>>>> j'y ai cru ;)
>>>>>
>>>>> mais ça ne convient pas car
>>>>>
>>>>> Invalid argument supplied for foreach() [CORE\cake\libs\controller
>>>>> \components\security.php, line 484]
>>>>>
>>>>> Ceci à cause du fait que le formulaire courant n'utilise pas
>>>>> ForumsController.
>>>>> C'est un controller (BlocksController, sans table) qui utilise la
>>>>> liste des forums pour savoir avec lequel "travailler"
>>>>>
>>>>> On 2 mar, 03:13, francky06l <[EMAIL PROTECTED]> wrote:
>>>>>
>>>>>> Essaye de mettre en "disableFields" ce champ and beforeFIlter : $this-
>>>>>>
>>>>>>> Security->disabledFields = array('Forum.forum_name');
>>>>>>>
>>>>>> On Feb 27, 10:23 pm, foxmask <[EMAIL PROTECTED]> wrote:
>>>>>>
>>>>>>> testé
>>>>>>> pas marché
>>>>>>> tjs blackhole :x
>>>>>>>
>>>>>>> On 26 fév, 11:59, foxmask <[EMAIL PROTECTED]> wrote:
>>>>>>>
>>>>>>>> merci pour le tuyau, je vais regarder
>>>>>>>>
>>>>>>>> j'avais aussi essaye un
>>>>>>>>
>>>>>>>> echo $form->input('p_fids[]',
>>>>>>>> array(
>>>>>>>> 'div'=>false,
>>>>>>>> 'label'=>$forum['Forums']['forum_name'],
>>>>>>>> 'type'=>'multiple',
>>>>>>>> [...]
>>>>>>>>
>>>>>>>> mais sans resultat.
>>>>>>>>
>>>>>>>> On 26 fév, 11:54, avairet <[EMAIL PROTECTED]> wrote:
>>>>>>>>
>>>>>>>>> Salut,
>>>>>>>>>
>>>>>>>>> Je ne sais pas si cela peut t'aider... mais les champs multiples ont
>>>>>>>>> été corrigés
>>>>>>>>> :http://groups.google.com/group/cake-php/msg/1c9e31fbdd7d4a03
>>>>>>>>>
>>>>>>>>> Avairet
>>>>>>>>>
>>>>>>>>> On 25 fév, 22:55, foxmask <[EMAIL PROTECTED]> wrote:
>>>>>>>>>
>>>>>>>>>> Bonsoir,
>>>>>>>>>> j'aimerai transformé le code suivant avec le FormHelper
>>>>>>>>>>
>>>>>>>>>> <li><label><input type="checkbox" name="p_fids[]" value="<?php echo
>>>>>>>>>> $forum['Forums']['id']?>" class="checkbox" <?php echo $options ?>
>>>>>>>>>> /><?
>>>>>>>>>> php echo $forum['Forums']['forum_name']; ?></label></li>
>>>>>>>>>>
>>>>>>>>>> Où
>>>>>>>>>> $options est le resultat de
>>>>>>>>>>
>>>>>>>>>> if ( in_array($forum['Forums']['id'],$p_fids ) )
>>>>>>>>>> $options = '"checked"="checked"';
>>>>>>>>>>
>>>>>>>>>> J'ai essayé ceci
>>>>>>>>>> echo $form->input('p_fids[]',
>>>>>>>>>> array(
>>>>>>>>>> 'div'=>false,
>>>>>>>>>> 'label'=>$forum['Forums']['forum_name'],
>>>>>>>>>> 'type'=>'checkbox',
>>>>>>>>>> 'before' => '<li>',
>>>>>>>>>> 'after' => '</li>',
>>>>>>>>>> 'value' => $forum['Forums']['id']
>>>>>>>>>> )
>>>>>>>>>> );
>>>>>>>>>> mais que je soumets le formulaire ;, avec le component Security, je
>>>>>>>>>> tombe dans le blackhole (page blanche) :(
>>>>>>>>>> Merci de votre aide
>>>>>>>>>> Cordialement.
>>>>>>>>>>
> >
>
>
>
--~--~---------~--~----~------------~-------~--~----~
Groupe "Cakephp-fr".
Adresse : [email protected]
Pour résilier : [EMAIL PROTECTED]
Pour les options : http://groups.google.com/group/cakephp-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---