Bonjour,

J'essaie de faire une recherche, récupérer le mot rechercher et l'envoyer à travers un lien mais j'ai l'erreur:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Exception information :
 
Message: SQLSTATE[HY093]: Invalid parameter number: no parameters were bound
Voilà comment je procède:

Ma vue:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
echo' <div class="title_bloc">Recherche par agence :</div>
    <input type="text"  name="expression" value="" />';
    $search=$_GET['expression'];
    echo ' &nbsp;&nbsp;<a  href="'. $this->baseUrl() .'/referencement/rsannonceurs/search/' .$search . '">Envoyer</a>';
Mon action:

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
21
22
23
24
25
26
27
28
29
30
31
32
  function rsannonceursAction()
	{
		$this->view->layout()->setLayout('1column');
                $this->view->headLink()->appendStylesheet(DEFAULT_SKIN_PATH . 'styles/recherches.css');
 
		$tAgences = new Agences();
		$field = "agence_rs";
 
                $globalsearch = $this->_request->getParam('expression');
                echo $globalsearch;
 
                // J'envoie les parametres à la methode de la table
                $this->view->search = $this->_request->getParam('search');
 
                $this->view->data = $this->AlphabeticArrayMaker($tAgences->GetDataAgenceByRS($this->view->search),$field);
	}
 
	function AlphabeticArrayMaker($datas,$field)
	{
		//variable permettant de stocker la premiere lettre de la colonne "nomColonne"
 
		$alphabet = array ("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z");
 
		foreach($datas as $row)
		{
			$lettre_tester = strtoupper(substr($row[$field], 0, 1));
 
			$array[$lettre_tester][] = $row;
		}
 
		return $array;
	}
et enfin mon modèle:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 /*** Récupère l'agence suivi sa raison social ***/
        public function GetDataAgenceByRS($rs) {
		$select = $this->getAdapter()->select();
		$select->from($this->_name,'*');
		$select->where('agence_rs = ?',$rs);
		return $this->getAdapter()->fetchRow($select);
	}
C'est mon $_GET qui déconne ça va pas du tout! Mais comment récupérer sa valeur et l'envoyé sans passer par un formulaire?
En gros pour un tout petit champs de recherche est ce que je suis obligée de passer par une Zend_Form?

Merci d'avance pour votre aide.