Subscriptions 2

HTML_QuickForm2 default renderer example


$_SERVER[‘PHP_SELF’]
));

// Then add a fieldset:
$fs = $form->addFieldset(‘contact_us’)->setLabel(“Please enter information below:”);

/*
// Add a title select box
$title = $fs->addSelect(‘title’)
->setLabel(“Title : “)
->loadOptions(array(” => “Select your title…”, “Mr.”, “Ms”));
$title->addRule(“required”, “Please specify your title”);
$title->setAttribute(‘style’, ‘width:100px’);
*/

// Add a name text fields
$firstname = $fs->addText(‘firstname’)->setLabel(“First Name: “);
$firstname->addRule(“required”, “Please specify your first name”);
$firstname->setAttribute(‘maxlength’, 64);
$lastname = $fs->addText(‘lastname’)->setLabel(“Last Name: “);
$lastname->addRule(“required”, “Please specify your last name”);
$lastname->setAttribute(‘maxlength’, 64);

// Address
$addr1 = $fs->addText(‘addr1’)->setLabel(“Street Addr 1: “);
$addr1->addRule(“required”, “Street address required.”);
$addr2 = $fs->addText(‘addr2’)->setLabel(“Street Addr 2: “);
$city = $fs->addText(‘city’)->setLabel(“City: “);
$city->addRule(“required”, “Please enter City”);
$state = $fs->addText(‘state’)->setLabel(“State: “);
$state->addRule(“required”, “Please enter State”);
$zip = $fs->addText(‘zip’)->setLabel(“Zip: “);
$zip->addRule(“required”, “Please enter Zip”);

// add phone and email – both required
$phone = $fs->addText(‘phone’)->setLabel(“Phone: “);
$phone->addRule(“required”, “Please enter phone”);
$email = $fs->addText(’email’)->setLabel(“Email: “);
$email->addRule(“required”, “Please enter email”);

// radio buttons for delivery type
$fsDelivery = $form->addFieldset(‘delivery’)->setLabel(“Newsletter Delivery Options (select one):”);
$radio1 = $fsDelivery->addElement(‘radio’, ‘delivery’, array(‘value’ => ‘Paper’), array(‘content’ => ‘Paper’, ‘label’ => ”));
$radio2 = $fsDelivery->addElement(‘radio’, ‘delivery’, array(‘value’ => ‘Email’), array(‘content’ => ‘Email’, ‘label’ => ”));
//$delivery->addRule(‘required’, ‘A selection is required’);

// Add a comment textarea with 6 rows
$fsComments = $form->addFieldset(‘comments’)->setLabel(“Enter Comments Here:”);
$comment = $fsComments->addTextarea(‘comment’, array(‘rows’ => 6,’cols’ => 80));
//$comment->setLabel(“Comments : “);
//$comment->addRule(“required”, “Please enter some comments”);

// Add the submit button to our form (outside of our fieldset)
$fsButtons = $form->addFieldset(‘submit’)->setLabel(“Submit information:”);
$submit = $fsButtons->addSubmit(‘submit’, array(‘value’ => “Click Here to Send”));

/****************************************************
**
** DID IT WORK?
**
****************************************************/

$form->addRecursiveFilter(‘trim’); // get rid of spaces and newlines

if ($form->validate()) {
echo “Success”; // Use a redirect here…
$form->removeChild($fsButtons);
$form->toggleFrozen(true);
// $renderer = HTML_QuickForm2_Renderer::factory(‘default’);
// $body = $form->render($renderer);
$body = $form;
// $send = mail($to, $subj, $body, $headers);
echo (“.”);

} else {
// echo $form->render($renderer);
echo $form;
}

?>