RE: [PEAR-DEV] Extending HTML_QuickForms

From: Date: Mon, 06 Dec 2004 00:02:29 +0000
Subject: RE: [PEAR-DEV] Extending HTML_QuickForms
Groups: php.pear.dev 
Request: Send a blank email to pear-dev+get-34821@lists.php.net to get a copy of this message
This may sway into off-topic, if the pear-users list is better suited, let me know: But with that said... What the heck is the process method help with? I would think if i had a form with a process method, that would be to aid the PROCESSING (emailing it, inserting into a db, etc.) No offense, I love the QuickForm package, but just think that the process method is kinda useless for any-kind of post-processing. If its intent was for validating, that has been taken-care of by user-defined rules and filters. What can we really do with the $values array it passes offf that we can't with user-defined filters and rules. I am looking at eventually converting about 40 forms that either send emails, make webservice calls, insert in to db, etc. I was hoping to use the process call like a factory method, like so: $email_config[] = array ('to'->'webmaster@example.com', 'from'->$form$[_elements]['email_address']['value']); if ($form-process(str 'email',bol FALSE,array $email_config[])) header(Location: thankyou?form=request-info); }else{ header(Location: thankyou?form=request-info&error); } function email (&form, $combine_uploaded, $email_config){ $email = new FormEmail(&form, $combine_uploaded, $email_config); if ($email->complete){ return TRUE; }else return FALSE; } class QuickFormEmailer extends QuickFormProcessor (&form, $combine_uploaded, $email_config){ // emailing class code here... } class QuickFormProcessor(){ // QuickForm Processor Abstract Class } -----Original Message----- From: Justin Patrin [mailto:papercrane@gmail.com] Sent: Saturday, December 04, 2004 8:17 PM To: Colin Ross Cc: pear-dev@lists.php.net Subject: Re: [PEAR-DEV] Extending HTML_QuickForms On Sat, 4 Dec 2004 18:02:10 -0800, Colin Ross <cross@worldstudygroup.com> wrote: > I am in the process of trying to extend the processing part of HTML_QuickForm to send an email of the submited values after validation. > This is very common on websites, a form that send the result via email. > > The only problem is that the process() method only has a values array of $name=>$value. > > Is there a way to specify what you want process to pass off? > If i could i would like the whole [_elements] array, if not the whole object (or reference to it) so even the configuration of the mail can co-exist with the QuickForms' > > From what I can tell, the process() method calls a function (user-define or not) as passes the $value array mentioned earlier, but nothing else (other than an optional argument for combining files), therefore, within any fuction here, the form object is out of scope. > > Any ideas? I don't want to hack the code unless absolutely neccesary... > Don't extend HTML_QuickForm maybe? Create your own code which gets the values from the form and passes that and the form object into your mailer function. -- Justin Patrin

« previous php.pear.dev (#34821) next »