Je suppose que vous rencontrez des problèmes car les champs de formulaire sont facultatifs et vous ne savez pas comment créer le conditions
pour votre recherche. Voici un moyen simple:
$conditions = array();
if (!empty($this->data['User']['zip'])) {
$conditions[] = array('User.zip' => $this->data['User']['zip']);
}
if (!empty($this->data['User']['street'])) {
$conditions[] = array("User.street LIKE '%{$this->data['User']['street']}%'");
}
... etc
Enfin, vous pouvez ajouter les conditions soit strictement:
$this->User->find('all', array('conditions' => $conditions));
Ou, vaguement:
$this->User->find('all', array('conditions' => array('or' => $conditions)));
La deuxième forme place le OU opérande entre vos conditions WHERE afin qu'il renvoie une correspondance particulière. Commencez ici et augmentez la complexité de la recherche lentement.