select does not work [duplicate]

-2

Hello everyone, I would like to ask your help, I am learning php and I am trying to make a dependent combobox, however I am facing some problems.

Problem number 1: My select neighborhoods do not appear

Problem number 2: The properties that appear do not match the options passed in the select, ie it shows all properties instead of showing only the properties that were selected in the select.

PHP:

<script src="lightbox/js/jquery-1.11.0.min.js"></script>

<script type="text/javascript">
$(document).ready(function(){
  $('#tipo').change(function(){

      $('#cb_categoria').load('combo_categoria.php?cod='+$('#tipo').val());
  });  //fim do change


  //aqui carrega o conteúdo

  $('#cb_categoria').change(function(){

      $('#conteudo').load('resultado.php?cod='+$('#cb_categoria').val());
      }); 

} );//fim do ready



</script>

<?php

$tipo = new Conexao();
$tipo->ExecSQL("select * from tipo ");

?>



<!--combo listando os tipos-->
 <label><b>Finalidade:</b></label>
<select id="tipo">

    <?php

    while($tip = $tipo->ListarDados()){

    ?>

    <option value="<?php echo $tip['tipo_id']?>"><?php echo $tip['tipo_nome']?></option>

    <?php

    }//fecho o laço

    ?>

</select>
<!--listando categoria-->
<label><b>Tipo:</b></label>

<select id="cb_categoria">

</select>


<!--conteudo pesquisado-->
<div id="conteudo"></div>

PHP category:

<script src="lightbox/js/jquery-1.11.0.min.js"></script>

<script type="text/javascript">
    $(document).ready(function () {
        $('#cb_categoria').change(function () {

            $('#cb_bairro').load('combo_bairro.php?cod='+$('#cb_categoria').val());

        });  //fim do change

        //aqui carrega o conteudo
        $('#cb_bairro').change(function () {

            $('#conteudos').load('resultado.php?cod='+$('#cb_bairro').val());

      });

    });//fim do ready



</script>



<?php
require './app/Config.php';

if (!empty($_GET['cod'])):

    $cod = $_GET['cod'];

else:
    $cod = 0;
endif;

$categoria = new Conexao();
$categoria->ExecSQL("select * from categoria where categoria_tipo = '$cod' ");
?>



<!--combo listando categoria-->


    <?php
    while ($cat = $categoria->ListarDados()) {
        ?>

        <option value="<?php echo $cat['categoria_id'] ?>"><?php echo $cat['categoria_nome'] ?></option>

    <?php
}//fecho o laço
?>



<label><b>Bairro:</b></label>
<select id="cb_bairro">

</select>


<!--conteudo pesquisado-->
<div id="conteudos"></div>

PHP neighborhoods:

<?php

require './app/Config.php';


if (!empty($_GET['cod'])):
    $cod = $_GET['cod'];

else:
    $cod = 0;
endif;


$bairro = new Conexao();
$bairro->ExecSQL("select * from bairro where bairro_categoria = '$cod'");

?>



<!--combo listando Bairro-->


    <?php

    while($bai = $bairro->ListarDados()){

    ?>

    <option value="<?php echo $bai['bairro_id']?>"><?php echo $bai['bairro_nome']?></option>

    <?php

    }//fecho o laço

    ?>

PHP results:

<?php
require_once './app/Config.php';


$imovel = new Conexao();

if (!empty($_GET['cod'])):
    $cod = $_GET['cod'];
else:
    $cod = 0;
endif;


$sql = 'select * from imoveis, tipo, categoria, bairro';
$sql .= ' where imovel_categoria = categoria_id and imovel_bairro = bairro_id';
$sql .= ' and imovel_tipo = tipo_id order by imovel_id';


$sql .= " and imovel_categoria = '$cod' ";
$sql .= " and imovel_bairro = '$cod' ";


$imovel->ExecSQL($sql);


echo '<ul>';
while ($imv = $imovel->ListarDados()) {


    //pego a foto
    $i = new Conexao();
    $f = $imv['imovel_id'];
    $i->ExecSQL("select * from imoveis_fotos where foto_imovel = '$f' limit 1");
    $foto = $i->ListarDados();


    //mostrando conteudo
    echo '<li class="listagem_home">';
    echo Fotos::Exibir($foto['foto_nome'], 150, 150);
    echo '<div class="imoveis">';
    echo '<div class="listagem_nome">' . $imv['tipo_nome'] . '</div>';
    echo '<div class="listagem_cat"> ' . $imv['categoria_nome'] . '</div>';
    echo '<div class="listagem_cat">R$ ' . Sistema::GetReal($imv['imovel_valor']) . '</div>';
    echo '<div class="listagem_bai"> ' . $imv['bairro_nome'] . '</div>';
    echo '<div id="botao">';
    echo '<a href="' . Rotas::$detalhe . $imv['imovel_id'] . '" class="btn">saiba mais</a>';
    echo '</div>';
    echo '</div>';
    echo '</li>';
}
echo '</ul>';
?>
    
asked by anonymous 12.03.2017 / 20:54

1 answer

0

Instead of using the codes like this:

$bairro->ExecSQL("select * from bairro where bairro_categoria = '$cod'");

I think it should look like this:

$bairro->ExecSQL("select * from bairro where bairro_categoria = '".$cod."'");

Something else, on the results page, you used the select as follows:

$sql = 'select * from imoveis, tipo, categoria, bairro';
$sql .= ' where imovel_categoria = categoria_id and imovel_bairro = bairro_id';
$sql .= ' and imovel_tipo = tipo_id order by imovel_id';


$sql .= " and imovel_categoria = '$cod' ";
$sql .= " and imovel_bairro = '$cod' ";

Are you sure that imovel_categoria and imovel_bairro are equal to $cod ?

    
12.03.2017 / 21:09