Eu peguei um template pronto com alguns problemas no plugins e nas consultas.
Dos 6 campos select para fazer uma procura de imóveis, 3 deles podem selecionar mais de uma vez, tipo de imóvel, cidade e bairro.
A lista desses 3 campos é gerada através da query e exibida com as checkbox antes dos nomes, no caso do Tipo Imóvel seria assim:
Antes, somente o Tipo de Imóvel podia escolher mais de um item, depois o cliente pediu para que os campos Cidade e Bairro também pudesse escolher mais de um item. Bom, o plugin que utilizo é o jquery.multiselect para fazer isso. Eu conseguir implementar isso, apesar que ele estava voltado para Tipo de Imóvel por causa da descrição "Tipo de Imóvel" no código que depois substituir por "Seleciona um item".
Até aí tudo bem, só que quando faz a pesquisa com mais de um item (Tipo de Imóvel, Cidade e/ou Bairro) somente considera um.
Exemplo: quando marco Nova Lima e depois eu marco Belo Horizonte, a pesquisa vai retorna só Belo Horizonte.
Eis o código:
index.php
<!-- BUSCAS --><sectionclass="boxBuscas"><divclass="centerSite"><ulclass="nav navBuscas"><liid="bRapida"><ahref="javascript:;">Busca <br/> Rápida</a></li><liid="bCodigo"><ahref="javascript:;">Busca <br/> Código</a></li><liid="bAvancada"><ahref="javascript:;">Busca <br/> Avançada</a></li></ul><divclass="tpBuscas boxBuscas"><h3class="titles"id="encontre">Encontre seu Imóvel.</h3><?php
if($modulo ==""){
$sql ="SELECT DISTINCT value, print FROM tipos WHERE codimobiliaria = '$codimobiliaria' ORDER BY print";}else{
$sql ="SELECT * FROM tipos_$modulo WHERE (codimobiliaria='$codimobiliaria') ORDER BY print";}
$first_query = mysqli_query($conexao,$sql);
$second_query = mysqli_query($conexao,$sql);
$linhas = mysqli_num_rows($first_query);?><divclass="forms bRapida">
<form method="POST" id="frmBusca" name="frmBusca" action="<?php echo $url_arquivo;?>listagem.php">
<dlclass="pretensao"><dt><labelid="lblPret"name="lblPret"for="ddlPretensao">Quero:</label></dt><dd><selectid="ddlPretensao"name="modulo"><optionvalue="1">Comprar</option><optionvalue="2"selected>Alugar</option></select></dd></dl><dlclass="tipo"><dt><labelid="lbltipo"name="lbltipo"for="ddltipo">Tipo do Imóvel:</label></dt><dd><selectid="ddltipo"name="ddltipo"multiple="multiple"><optionvalue="0"selected="selected">Todos</option><?php
//Loop no primeiro campo de tipos de imovel.for($i =0; $i < $linhas; $i++){
$type_01 = mysqli_fetch_array($first_query);
echo "<option value=\"$type_01[value]\">$type_01[value]</option>";}?></select></dd></dl><scripttype="text/javascript">$(function(){
$('select[id=ddltipo]').multiselect();});</script><?php
$sql_cidade ="SELECT cidade FROM vendas WHERE codimobiliaria = $codimobiliaria GROUP BY cidade";
$res = mysqli_query($conexao,$sql_cidade);?><dlclass="tipo"><dt><labelid="lblCidade"name="lblCidade"for="ddlCidade">Cidade:</label></dt><dd><selectid="cidade"name="cidade"multiple="multiple"><optionvalue="0"selected="selected">Cidade</option><?php
while($row = mysqli_fetch_array($res)){
echo "<option value='". $row['cidade']."'> ". utf8_encode($row['cidade'])."</option>";}?></select></dd></dl><scripttype="text/javascript">$(function(){
$('select[id=cidade]').multiselect();});</script><?php
if($modulo ==""){
$sql ="SELECT DISTINCT value, print FROM bairros WHERE (codimobiliaria='$codimobiliaria') ORDER BY print";}else{
$sql ="SELECT * FROM bairros_$modulo WHERE (codimobiliaria='$codimobiliaria') ORDER BY print";}
$first_query = mysqli_query($conexao,$sql);
$second_query = mysqli_query($conexao,$sql);
$linhas = mysqli_num_rows($first_query);?><dlclass="tipo"><dt><labelid="lblBairro">Bairro:</label></dt><dd><selectid="ddlBairro"name="ddlBairro"multiple="multiple"><optionvalue="0"selected="selected">Bairro</option><?php
//Faz o loop com os registros de bairro dentro do Box de select.for($i =0; $i < $linhas; $i++){
$type_01 = mysqli_fetch_array($first_query);
echo utf8_encode("<option value=\"$type_01[value]\">$type_01[print]</option>");}?></select></dd></dl><scripttype="text/javascript">$(function(){
$('select[id=ddlBairro]').multiselect();});</script><dlclass="vagas"><dt><labelid="lblQts"name="lblQts"for="ddlQts">Quartos:</label></dt><dd><selectid="ddlQts"name="ddlQts"><optionvalue="">Quartos</option><optionvalue="1">A partir de 1</option><optionvalue="2">A partir de 2</option><optionvalue="3">A partir de 3</option></select></dd></dl><divclass='size1'><dlclass="valorMax"><dt><labelid="lblValorMax"name="lblValorMax"for="txtValorMax">Valor máximo:</label></dt><dd><selectname="ddlValorMax"id="ddlValorMax"/></select></dd></dl></div><inputtype="submit"id="btnEnviar"class=''value="Buscar"/><inputtype="hidden"id="remetente"value="1"/></form><divclass="clearboth"></div></div><!-- .bRapida --><divclass="forms bCodigo">
<form method="POST" id="frmBusca" name="frmBusca" action="<?php echo $url_arquivo;?>listagem.php">
<dlclass="pretensao"><dt><labelid="modulo"name="modulo"for="modulo">Quero:</label></dt><dd><selectid="modulo"name="modulo"><optionvalue="vendas">Comprar</option><optionvalue="aluguel">Alugar</option></select></dd></dl><p>( Digite o código dos imóveis desejados. Exemplo: CA0001, CA0002 )</p><inputid="ref"type="text"name="ref"onblur="if(this.value ==''){this.value ='Código';}"onfocus="if(this.value =='Código'){this.value ='';}"value='Código'/><inputtype="submit"id="btnEnviar"class=''value="Buscar"/><inputtype="hidden"id="remetente"value="1"/></form></div><!-- .bCodigo --><divclass="forms bAvancada"></div><!-- .bAvancada --></div><!-- .tpBuscas --><divclass="clearboth"></div></div><!-- .centerSite --></section><!-- .boxBuscas -->
listagem.php
<divid="pageListagem"class="pageInternal listagemPadrao"><divid="listImovel"><?php
//$codigo_imovel = $_POST['ref'];
$modulo = $_POST['pretensao'];
$pes_tipo_imovel = $_POST['tipo'];
$pes_cidade = $_POST['cidade2'];
$pes_bairro = $_POST['ddlBairro'];
$pes_quartos = $_POST['ddlQts'];
$pes_valor = $_POST['ddlValorMax'];/* alterar a regra aqui */if($modulo =='1'){
$tabela ='vendas';
$oque ='Valor de venda:';
$pasta ='img_vendas/';}elseif($modulo =='2'){
$tabela ='aluguel';
$oque ='Valor de Locação:';
$pasta ='img_aluguel/';}?><!-- listagem de imoveis --><divclass="listagemImovel"><?php
//$sql2 = "SELECT * FROM $tabela WHERE codimobiliaria = '$codimobiliaria' && imovel != 'Industrial' && imovel != 'Rural'";if($pes_cidade !='0'){
$sql2 ="SELECT * FROM $tabela WHERE codimobiliaria = '$codimobiliaria' AND cidade = '$pes_cidade' AND imovel != 'Industrial' AND imovel != 'Rural'";}if($pes_bairro !='0'){
$sql2 ="SELECT * FROM $tabela WHERE codimobiliaria = '$codimobiliaria' AND bairro = '$pes_bairro' AND imovel != 'Industrial' AND imovel != 'Rural'";}if($pes_tipo_imovel !='0'){
$sql2 ="SELECT * FROM $tabela WHERE codimobiliaria = '$codimobiliaria' AND imovel = '$pes_tipo_imovel' AND imovel != 'Industrial' AND imovel != 'Rural'";}if($pes_quartos !=''){
$sql2 ="SELECT * FROM $tabela WHERE codimobiliaria = '$codimobiliaria' AND nquartos >= '$pes_quartos' AND imovel != 'Industrial' AND imovel != 'Rural'";}if($pes_valor !='99999999'){
$sql2 ="SELECT * FROM $tabela WHERE codimobiliaria = '$codimobiliaria' AND preço <= '$pes_valor' AND imovel != 'Industrial' AND imovel != 'Rural'";}if($pes_tipo_imovel !='0'&& $pes_cidade !='0'){
$sql2 ="SELECT * FROM $tabela WHERE codimobiliaria = '$codimobiliaria' AND imovel = '$pes_tipo_imovel' AND cidade = '$pes_cidade' AND imovel != 'Industrial' AND imovel != 'Rural'";}if($pes_tipo_imovel !='0'&& $pes_cidade !='0'&& $pes_bairro !='0'){
$sql2 ="SELECT * FROM $tabela WHERE codimobiliaria = '$codimobiliaria' AND imovel = '$pes_tipo_imovel' AND cidade = '$pes_cidade' AND bairro = '$pes_bairro' AND imovel != 'Industrial' AND imovel != 'Rural'";}if($pes_tipo_imovel !='0'&& $pes_cidade !='0'&& $pes_bairro !='0'&& $pes_quartos !='0'){
$sql2 ="SELECT * FROM $tabela WHERE codimobiliaria = '$codimobiliaria' AND imovel = '$pes_tipo_imovel' AND cidade = '$pes_cidade' AND bairro = '$pes_bairro' AND nquartos >= '$pes_quartos' AND imovel != 'Industrial' AND imovel != 'Rural'";}if($pes_tipo_imovel !='0'&& $pes_cidade !='0'&& $pes_bairro !='0'&& $pes_quartos !='0'&& $pes_valor !='99999999'){
$sql2 ="SELECT * FROM $tabela WHERE codimobiliaria = '$codimobiliaria' AND imovel = '$pes_tipo_imovel' AND cidade = '$pes_cidade' AND bairro = '$pes_bairro' AND nquartos >= '$pes_quartos' AND preço <= '$pes_valor' AND imovel != 'Industrial' AND imovel != 'Rural'";}if($pes_tipo_imovel =='0'&& $pes_cidade =='0'&& $pes_bairro =='0'&& $pes_quartos ==''&& $pes_valor =='99999999'){
$sql2 ="SELECT * FROM $tabela WHERE codimobiliaria = '$codimobiliaria' AND imovel != 'Industrial' AND imovel != 'Rural'";}?><?php
$query2 = mysqli_query($conexao,$sql2);if(mysqli_num_rows($query2)){
$reg2 = mysqli_fetch_array($query2);}?><?php $linhas = mysqli_num_rows($query2);?><headerclass="headerListagem"><h2class="titleBox">Resultado da Busca </h2><pclass="qntImoveis"><strong><?=$linhas?></strong> imóveis encontrado(s)</p><divclass="opcoes"><divid="dv_order"name="dv_order"class="filtros"><p>Ordenar por: </p><selectid='ddlorder'name='ddlorder'><optionvalue='menor'selected='selected'>menor valor</option><optionvalue='maior'>maior valor</option></select><inputtype="hidden"id="order"name="order"value="3"></div><divclass="modoVisualizacao"><p>Visualizar em:</p><ul><li><ahref="javascript:;"class="btn verTab"rel="verTab"><span></span>Tabela</a></li><li><ahref="javascript:;"class="btn verLista ativo"rel="verLista"><span></span>Lista</a></li></ul></div></div><divclass="clearboth"></div></header><divclass="todosImoveis"><?php
if($linhas !='0'){
$query2 = mysqli_query($conexao,$sql2);if(mysqli_num_rows($query2)){while($reg2 = mysqli_fetch_array($query2)){
$imovel = $reg2['imovel'];
$codigo_imovel = $reg2['codimovel'];
$bairro = $reg2['bairro'];
$cidade = $reg2['cidade'];
$uf = $reg2['uf'];
$quartos = $reg2['quartos'];
$suites = $reg2['suites'];
$valor = $reg2['preço'];
$vagas = $reg2['garagens'];?><divclass='imovel'><figure><!-- VG Foto: 439978337 -->
<a href="<?php echo $url_arquivo;?>imovel/imovel.php?modulo=<?=$modulo;?>&def=med&codimovel=<?=$reg2['codimovel']?>&form=&tipoPagina=1" title="" >
<img src="http://www.imobiliaria.com.br/web/<?php echo $reg2['codimobiliaria'].'/'. $pasta . $reg2['codimobiliaria'].'_'.$reg2['codimovel'];?>_01.jpg" alt="" />
</a>
<a class='sombra' href='<?php echo $url_arquivo;?>imovel/imovel.php?modulo=<?=$modulo;?>&def=med&codimovel=<?=$reg2['codimovel']?>&form=&tipoPagina=1'>
</a>
<a class='geral' href='<?php echo $url_arquivo;?>imovel/imovel.php?modulo=<?=$modulo;?>&def=med&codimovel=<?=$reg2['codimovel']?>&form=&tipoPagina=1'>
</a></figure><divclass='features'><h3><?php echo $imovel;?></h3><h4><?php echo $bairro;?> - <?php echo $cidade ?>/<?php echo $uf ?></h4><pclass='ref'>Ref.: <?php echo $codigo_imovel;?></p><divclass='importantes in_dorm'><span><?php echo $quartos;?></span> dormitório(s)
</div><divclass='importantes in_suites'><span><?php echo $suites;?></span> suíte(s)
</div><divclass='importantes in_garagens'><span><?php echo $vagas;?></span> vaga(s)
</div><divclass='preço'><span><?php echo $oque;?></span><divclass='clearboth'></div><?php echo 'R$ '. $valor .',00';?></div><divclass='valor'></div><divclass='favoritos'>
<a href='<?php echo $url_arquivo;?>impressaod.php?modulo=<?=$modulo?>&def=med&codimovel=<?=$reg2['codimovel']?>&form=&tipoPagina=1' class='thickbox' title='Ficha completa do imóvel'>Ficha do Imóvel</a><br><aclass='maisinfo btn'href='index.php'><imgwidth="30px"height="30px"src="img/voltar.png"/><br>
Voltar
</a></div>
<a class='maisinfo btn' href='<?php echo $url_arquivo;?>imovel/imovel.php?modulo=<?=$modulo;?>&def=med&codimovel=<?=$reg2['codimovel']?>&form=&tipoPagina=1'>Mais informações
</a></div></div><?php
}}else{for($i=0; $i <7; $i++){?><li><ahref="#"><imgclass="thumbnailDestaque watermark_small"src="images/img-teste.png"height="90"width="120"></a></li><?php
}}}if($linhas =='0'){
echo '<script> alert("Não existem imóveis cadastrados dentro desses parâmetros de pesquisa!"); window.opener.location="$url_arquivo"; </script>';}?></div><!-- .todosImoveis --><footer><divclass="opcoes bottom"><?php /*?><divid="dv_page"><ulclass="paginacao"><liclass="pagina"><strong>Página: 1 de 4</strong></li><liclass="proximo"><avalor="2"href="#">Próximo</a></li><liclass="ultimo"><avalor="4"href="#">Último</a></li><liclass="irpagina"></ul><inputtype="hidden"id="page"name="page"value="1"><inputtype="hidden"id="page"name="page"value="1"></div><?php */?></div><!-- .opcoes.bottom --><divclass="clearboth"></div></footer></div><!-- .listagemImovel --><divclass="clearboth"></div></div><!-- #listImovel --><divclass="clearboth"></div></div><!-- #pageListagem -->
Pergunta
Air-Gear
Eu peguei um template pronto com alguns problemas no plugins e nas consultas.
Dos 6 campos select para fazer uma procura de imóveis, 3 deles podem selecionar mais de uma vez, tipo de imóvel, cidade e bairro.
A lista desses 3 campos é gerada através da query e exibida com as checkbox antes dos nomes, no caso do Tipo Imóvel seria assim:
Antes, somente o Tipo de Imóvel podia escolher mais de um item, depois o cliente pediu para que os campos Cidade e Bairro também pudesse escolher mais de um item. Bom, o plugin que utilizo é o jquery.multiselect para fazer isso. Eu conseguir implementar isso, apesar que ele estava voltado para Tipo de Imóvel por causa da descrição "Tipo de Imóvel" no código que depois substituir por "Seleciona um item".
Até aí tudo bem, só que quando faz a pesquisa com mais de um item (Tipo de Imóvel, Cidade e/ou Bairro) somente considera um.
Exemplo: quando marco Nova Lima e depois eu marco Belo Horizonte, a pesquisa vai retorna só Belo Horizonte.
Eis o código:
index.php
listagem.php
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.