Re: array on addElement, does not work => QuickForm
| From: | Louie Miranda | Date: | Fri, 13 Oct 2006 08:34:30 +0000 |
| Subject: | Re: array on addElement, does not work => QuickForm | ||
| References: | 1 2 3 4 | Groups: | php.pear.general |
| Request: | Send a blank email to pear-general+get-25430@lists.php.net to get a copy of this message | ||
Now i know. Wow, this is really a great tool.
Can i filter CCexpiry for month and year.. lets say if today is october 2006
and user selected may 2006 (where it should had been expired already). Can a
rule be processed on that directly on quickform?
So far the only rule i got was..
$form->addRule('CCexpiry', 'Please select credit card expiration',
'required', null);
Louie
On 10/13/06, Ian Warner <iwarner@triangle-solutions.com> wrote:
Louie Miranda wrote: Whooa!? HAHA, it worked. Wow, thanks a lot. My brains started to twist on this awhile ago. Yeah, that was my problem. I need to add the arrays together. Louie Its a good example actually of the power of quickform - now if you didnt know the date functions then you probably have the month field a little different - combine these into one view the example here: http://wiki.triangle-solutions.com/index.php/PEAR_HTML_QuickForm#Date code for clarity - this will produce month and year select boxes, the key is the format - try and add Y-m-d H:i:s to this - very cool. $defaults['CCexpiry'] = array('m' => date('m') ); $form->addElement('date', 'CCexpiry', 'Credit Card Expiration', array('format' => 'F-Y',-- Louie Miranda (lmiranda@gmail.com) http://www.axishift.com //JSM-W'minYear' => date('Y'), 'maxYear' => date('Y') + 10));On 10/13/06, Ian Warner <iwarner@triangle-solutions.com> wrote:Louie Miranda wrote:Im trying to add an array of year from addElement, but couldnt getwhat iwanted. My code below gets the current year and adds +10 to it and i loop it over an array of $numbers. // Get current year and add +10 more and display on the cc screen.But when i try to display it over to addElement, i ony see the lastNo need for all of that: QuickForm has it all: $form->addElement('date', 'cc_expy', 'Card Expiry (Year)', array('format' => 'Y', 'minYear' => date('Y'), 'maxYear' => date('Y') + 10)); You problem was that you were overwriting you array each time anyway, you just had to add the arrays together. But use the above.$date_year = date('Y'); $date_year_nx_7years = ($date_year + 10); foreach (range($date_year, $date_year_nx_7years) as $number) {$num_array = array($number=>$number); //$num_array++;}$form->addElement('select', 'cc_expy', 'Card Expiry (Year)', $num_array); .. $form->toHtml()yearwhich is "2016". Not the full loop. Does anybody know, how can i get this to work? Thanks a lot.