Re: QF: while loop defaultvalues and unique identification
| From: | Bertrand Mansion | Date: | Tue, 07 Oct 2003 17:47:09 +0000 |
| Subject: | Re: QF: while loop defaultvalues and unique identification | ||
| References: | 1 | Groups: | php.pear.general |
| Request: | Send a blank email to pear-general+get-8326@lists.php.net to get a copy of this message | ||
<keith@setuplinux.com> wrote :
> Bertrand Mansion wrote:
>
>> <keith@setuplinux.com> wrote :
>>
>>
>>
>>> This problem has been kicking me for almost a week now. I figured out
>>> have to display the form the way I want in a spread sheet type format,
>>> display a number of rows from a while loop depending on the rows in the
>>> db with a match:
>>>
>>> email first last
>>> [.....][.....][.....]
>>> [.....][.....][.....]
>>> [.....][.....][.....]
>>>
>>> My issue is I have to give some sort of unique row identifier so when I
>>> click my "update" later I can somehow parse though the data. The way I
>>> thought to do that was basically "$fieldname_$rowidentifer" which seems
>>> to work ok until I get ready to do my update statement. Here is alittle
>>> example:
>>>
>>> $form->addElement('text', "email_$emseed_ctid", null,
>>> 'size="15"');
>>> $form->addElement('text', "fname_$emseed_ctid", null,
>>> 'size="10"');
>>> $form->addElement('text', "lname_$emseed_ctid", null,
>>> 'size="10"');
>>>
>>> So I end up with a bunch of data like this:
>>>
>>> fname_1 lname_1 email_1 fname_2 lname_2 email_2 fname_3 lname_3 email_3
>>>
>>> Then I have to split the names of the fields and try to make an array
>>> ,etc ,etc. It gets painfull.
>>>
>>> I thought a easier way would be to just make a array out of the data
>>> like so:
>>>
>>> $form->addElement('text', "email['$emseed_ctid']",
>>> null, 'size="15"');
>>> $form->addElement('text', "fname['$emseed_ctid'], null,
>>> 'size="10"');
>>> $form->addElement('text', "lname['$emseed_ctid'], null,
>>> 'size="10"');
>>>
>>> but then I can't figure out a way to make the $defaultValue's work. I
>>> know there is probally a really easy way to do this and would really
>>> apprecaite a push in the right direction.
>>>
>>> Basically I need a easy way to uniquely identify rows so I can split
>>> apart the information and do my update statement.
>>>
>>>
>>
>> Use groups.
>>
>> while(I have $emseed_ctid left) {
>> $fields = array();
>> $fields[] =& HTML_QuickForm::createElement('text', "email", null,
>> 'size="15"');
>> $fields[] =& HTML_QuickForm::createElement('text', "email", null,
>> 'size="15"');
>> $form->addGroup($fields, $emseed_ctid, 'Label');
>> }
>>
>> Bertrand Mansion
>> Mamasam
>>
>>
> That's what I tried to do over the weekend. But the problem with doing
> that was having unique group ID's which I could manage, but I still had
> issues trying to do default vaules with groups that had unique id's.
>
>
> Basically I can't see a way to use defaultVaules when there is a
> enviornment where I have to create a fieldname on the fly and still be
> able to populate it with defaultValues.
while(I have $emseed_ctid left) {
$fields = array();
$fields[] =& HTML_QuickForm::createElement('text', "email", null,
'size="15"');
$fields[] =& HTML_QuickForm::createElement('text', "email", null,
'size="15"');
$form->addGroup($fields, $emseed_ctid, 'Label');
$defaults[$emseed_ctid] = array('email'=> my default value for email,
etc...);
}
$form->setDefaults($defaults);
I don't see where is the problem ?
Bertrand Mansion
Mamasam