Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde pessoal! Eu tenho umas duvidas e queria saber como que poderia fazer um campo de busca com apenas 3 filtros por exemplo, usando um input e um select com 3 opções, de acordo com o que o usuario selecionar ele ira fazer a busca e mostra na tela, por enquanto eu tenho isso:
// Controller
function pesquisar(){
$opcao = array('1'=>'Nome do Especialista', '2'=>'Especialidade', '3'=>'Endereço');
$this->set($opcao);
if($opcao['1']){
$conditions = $this->postConditions($this->data , array('nomeEspecialista' => 'LIKE'));
$this->set('resultados', $this->Especialista->find('all', array('conditions' => $conditions)));
}else if($opcao['2']){
$conditions = $this->postConditions($this->data , array('especialidade' => 'LIKE'));
$this->set('resultados', $this->Especialista->find('all', array('conditions' => $conditions)));
}else if($opcao['3']){
$conditions = $this->postConditions($this->data , array('endereco' => 'LIKE'));
$this->set('resultados', $this->Especialista->find('all', array('conditions' => $conditions)));
}
}
//view
<?php echo $form->create('Especialista', array('action'=>'pesquisar')) ?>
<?php echo $form->input('', array('label'=>'Pesquisar:'));?>
<?php echo $form->select('filtro', $opcao); ?>
<?php echo $form->submit('Buscar', array('class' => 'ui-state-default ui-corner-all'));?>
<?php echo $form->end()?>
<?php if(isset($resultados)):?>
<table id="users" class="ui-widget ui-widget-content">
<thead>
<tr class="ui-widget-header ">
<th>Nome do Especialista</th>
<th>Especialidade</th>
<th>Titulação</th>
<th>Endereço</th>
<th>Telefone de contato</th>
<th>Qualificado</th>
</tr>
</thead>
<tbody>
<?php foreach($resultados as $resultado):?>
<tr>
<td><?php echo $html->link($resultado['Especialista']['nomeEspecialista'], array('action'=>'ver', $resultado['Especialista']['nomeEspecialista'])); ?></td>
<td><?php echo $resultado['Especialista']['especialidade']; ?><?php echo ', '?><?php echo $resultado['Especialista']['subEspecialidade']; ?></td>
<td><?php echo $resultado['Especialista']['titulacao']; ?></td>
<td><?php echo $resultado['Especialista']['endereco']; ?></td>
<td><?php echo $resultado['Especialista']['telefone']; ?></td>
<td><?php echo $html->image($resultado['Especialista']['qualificado'].'.png')?></td>
</tr>
</tbody>
<?php endforeach?>
</table>
<?php endif?>
Só que toda vez que eu tento ver a view no navegador fala que a variavel $opcao nao foi definida? Esta correto minha logica ou o metodo que estou fazendo?
Obrigado!!
Carregando comentários...