Hi, I am trying to implement a simple search function. For the test purpose I am trying to display the search string in my view. This is how it looks like:
my form -------------------------- class Form_Search extends Zend_Form { public function init() { //create search text input element $qsearch = New Zend_Form_Element_Text('qsearch'); $qsearch ->setLabel('Quick Search'); $qsearch ->setAttrib('size', '40'); $qsearch ->setRequired(true); $qsearch ->addFilter('StringTrim'); $qsearch ->addValidator('NotEmpty',true); $qsearch ->addValidator('Alnum', true); $qsearch ->addErrorMessage('Invalid search string'); // add the submit button $submit = New Zend_Form_Element_Submit('submit'); $submit->setLabel('Search'); //add the elements to form $this->addElements(array($qsearch, $submit)); } } ---------------------------------------------- my controller --------------------------------------------- public function indexAction() { $request = $this->getRequest(); $form = $this->_getSearchForm(); $this->view->form = $form; if($request->isPost()) { if ($form->isValid($request->getPost())) { $strinput = $form->getValue('qsearch'); $this->showQuickSearchResult($strinput); } ... ... private function showQuickSearchResult($searchstr) { $this->view->searchstr = $searchstr; } ----------------------------------------------------------------- my view script ------------------------------- <div id="quicksearch"> <?= $this->form ?> </div> <div id="check"> <? if ($this->searchstr): ?> <h2>search string is: <? $this->searchstr ?></h2> <? endif ?> </div> ----------------------------- My problem is the search string I entered in the form doesn't get shown. Its blank. Why? What's wrong with this code? Isn't this how we get the value from the Form? ------------------------------- $form->getvalue(<element_name>); ------------------------------- Thanks -- ======================= Registered Linux User #460714 Currently Using Fedora 8, 10 =======================