Jump to content
Fórum Script Brasil

Question

Boa tarde, eu to desenvolvendo um site de imobiliária e confesso que to empacada em uma parte e não faço ideia de pra onde ir, se alguém puder me ajudar agradeceria muito.

O site possui filtros em torno de 10 filtro, ex: quantidade de quartos, localidade e etc, o meu maior dilema é como fazer esse filtros, já que não existe um submit no formulário, minha ideia inicial era pegar os campos preenchidos e fazer uma consulta com eles, mas ai eu entro em outro dilema eu não sei quais campos vão ser preenchidos já que eles não são obrigatórios, como fazer uma consulta de um item num campo onde eu nem sei se foi preenchido mesmo. Se alguém puder me dar uma luz, eu agradeço e muito.  

Link to post
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Opa bão, 

Rebeca, uma solução é criar os famosos "IFs" para montar a consulta conforme os campos preenchidos, se você puder compartilhar o código pra gente entender melhor, e também eu posso tentar editar ele pra chegar nesse resultado que você procura.

Edited by ofelipe
Link to post
Share on other sites
  • 0
Posted (edited)

Felipe, então eu tentei fazer uma condição dentro da consulta sql, mas eu cai em outro problema pra variar kkkk, como eu disse eu tenho um filtro de imoveis com algo em torno de 10 campos, entre eles; input, select, button , como eu não tenho um submit pra esse formulário eu to usando ajax e javascript pra mandar os campos que foram preenchidos para o php e verificar, to fazendo uns teste com um filtro reduzido somente dois campos, eu já consigo pegar os valores inseridos com ajax e passar para o php, mas quando chego no php ele não executa e me da erro.

<form method="POST" id="form-pesquisa" action="">
        <input type="text" id="pesquisa" style="width: 35%; height: 40px; text-align: center; font-size: 25px;"/>
        <select name="idade" id="select_idade">
            <option value="" selected></option>
            <option value="19" >19</option>
            <option value="18">18</option>
        </select>
  </form>
$(function(){
    $("#select_idade").change(function(){
               var select_idade = $(this).val();
               if(select_idade != ''){
                   var select = {
                       idade : select_idade
                   }
                   $.post('busca_banco.php', select, function(retorna){
                       $(".resultado").html(retorna);
                   });
               }else{
                   $(".resultado").html('');
               }
    });
    
    //Pesquisar sem refresh na página
    $("#pesquisa").keyup(function(){
        
        var pesquisa = $(this).val();
        
        //Verifica se há algo digitado

        if(pesquisa != ''){
            var dados = {
                palavra : pesquisa
            }           
   
        $.post('busca_banco.php', dados, function(retorna){
           //Mostra dentro da div os resultados obtidos
            $(".resultado").html(retorna);
        });
    }else{
        $(".resultado").html('');
    }
    });
});
$busca = $_POST['palavra'];
$idade = $_POST['select_idade'];

$busca_select = "SELECT * FROM teste WHERE TRUE
 AND IF('$idade' != 0, TRUE)
 AND IF('$busca' !=0, TRUE)";
$result_busca = mysqli_query($cnn, $busca_select);
if(mysqli_num_rows($result_busca)<=0){
 echo '<div style = "width:80%; overflow:auto; border-bottom:1px solid #333">
     Não existe resultado
     </div>
     ';
}else{
 while ($rows = mysqli_fetch_assoc($result_busca)){
     echo '<div style = "width:35%; overflow:auto; border-bottom:1px solid #333">
     '.$rows['idade'].' - '.$rows['palavra'].' <br>
     </div>
     ';
 }
}

 

Edited by Rebeca Julia Bronzatti
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      148680
    • Total Posts
      644502
×
×
  • Create New...