Bonsoir à tous,

J'ai suivi un bouquin/tuto sur Zend Framework et une partie est consacrée à Zend_Form. Je réalise que mes recherches ne retournent jamais aucun résultat.

Voici les codes du formulaire:

Ceci est pour afficher le formulaire, est dans layout.phtml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
<?php 
  $searchForm = new Form_SearchForm();   
  $searchForm->setAction(APP_PATH.'/search');
  echo $searchForm->render();
?>
Voici la classe correspondante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
class Form_SearchForm extends Zend_Form 
{
    public function init()
    {
        // create new element
        $query = $this->createElement('text', 'keywords');
        // element options
        $query->setLabel('Keywords');
        $query->setRequired(true);
        $query->setAttrib('size',20);
        // add the element to the form
        $this->addElement($query);
 
        $submit = $this->createElement('submit', 'search');
        $submit->setLabel('Search Site');
        $submit->setDecorators(array('ViewHelper'));     
        $this->addElement($submit);  
    }
}
Et ceci est le controller
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public function indexAction()
	{
        if($this->_request->isPost()) {
            $keywords = $this->_request->getParam('keywords');
 
			$query = Zend_Search_Lucene_Search_QueryParser::parse($keywords);
            $index = Zend_Search_Lucene::open(APPLICATION_PATH . '/indexes');
            $hits = $index->find($query);
            $this->view->results = $hits;  
            $this->view->keywords = $keywords;          
        }else{
            $this->view->results = null;
        }
    }

Le paramètre 'keywords' ne parvient pas jusque le contrôleur. Auriez-vous une idée ?