Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Pienkovski

Seleção de Dados com PHP/MySQL não funciona

Recommended Posts

Amigos,Estou fazendo um site para uma imobiliária. Criei um banco de dados no MySQL e um formulário para colocar os imóveis para alugar no BD. Deu tudo certo e funcionou beleza.Depois criei um formulário que fica no Index do site para o usuário selecionar os imóveis para alugar, segundo suas preferências. O usuário pode selecionar os imóveis pelo tipo (Apartamento, Casa, Barracão), o número de dormitórios e o valor do aluguel(menos de 300,00; entre 300,00 e 500,00; entre 500,00 e 1000,00; entre 1000,00 e 2000,00; acima de 2000,00).A seleção pelo tipo de imóvel e pelo número de quartos está funcionando perfeitamente, mas, quanto ao valor do aluguel, não deu certo.Eu já testei as seleções uma por uma e o problema está realmente no valor do aluguel.Quando eu não coloco a condição do valor funciona bem. Quando eu coloco, informa que nenhum registro foi encontrado, sendo que no formulário eu escolho os dados de imóveis já registrados no BD.A seguir os códigos do formulário de seleção e da página que recebe os dados do formulário e exibe os dados do BD.Formulário:<html><head><title>Carlos Amaral Imóveis</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head><body bgcolor="#FFFFFF" link="#000000" vlink="#000000" alink="#000000"><table width='751' border='0' cellspacing='0'><table width='160' border='0' cellspacing='0'> <tr> <td bgcolor='#009999'><font face='Verdana,Arial,Helvetica,sans-serif' size='2' color="#FFFFFF"><div align='center'><b> Escolha um imóvel<br>para alugar:</b></div></font> </td> </tr> <tr> <td bgcolor='#CCFFCC'><font face='Verdana,Arial,Helvetica,sans-serif' size='2' color="#000000"><div align='center'><b> Residencial</b></div></font> </td> </tr> <tr> <td> <form name='form1' method='post' action='exibe_alugres.php'> <table width='100%' border='0' cellspacing='0'> <tr> <td bgcolor='#009999'><font face='Verdana,Arial,Helvetica,sans-serif' size='2' color="#FFFFFF"><div align='center'><b> Tipo de imóvel:</b></div></font> </td> </tr> <tr> <td bgcolor='#009999'><div align='center'><select name='tip'><option value='apartamento'>Apartamento</option><option value='casa'>Casa</option><option value='barracao'>Barracão</option></div> </td> </tr> <tr> <td bgcolor='#009999'><font face='Verdana,Arial,Helvetica,sans-serif' size='2' color="#FFFFFF"><div align='center'><b> Número de Dormitórios:</b></div></font> </td> </tr> <tr> <td bgcolor='#009999'><div align='center'><select name='dor'><option value='1'>1 Dormitório</option><option value='2'>2 Dormitórios</option><option value='3'>3 Dormitórios</option><option value='4'>4 Dormitórios</option><option value='>4'>Mais de 4</option></div> </td> </tr> <tr> <td bgcolor='#009999'><font face='Verdana,Arial,Helvetica,sans-serif' size='2' color="#FFFFFF"><div align='center'><b> Valor do Aluguel:</b></div></font> </td> </tr> <tr> <td bgcolor='#009999'><div align='center'><select name='val'><option value='(<=300)'>Menor que 300</option><option value='(>300 and <=500)'>Entre 300 e 500</option><option value='(>500 and <=1000)'>Entre 500 e 1000</option><option value='(>1000 and <=2000)'>Entre 1000 e 2000</option><option value='(>2000)'>Acima de 2000</option></div> </td> </tr> <tr> <td bgcolor='#009999'><div align='center'><input type='Submit' name='Submit' value='Enviar'> </td> </tr> </table> </form> </td></tr></table></table></body></html>Página que recebe os dados:<?php$tip = isset($_POST['tip'])?$_POST['tip']:FALSE;$dor = isset($_POST['dor'])?$_POST['dor']:FALSE;$val = isset($_POST['val'])?$_POST['val']:FALSE;include "conexao.php";$tabela = "imo_res_loc";$sql = mysql_query("select cod,tip,des,dor,bai,val from $tabela where tip = \"$tip\"and dor = \"$dor\"and val = \"$val\"") or die(mysql_error());?><html> <body><table width='100%' border='0'> <tr bgcolor='#336633'> <td><b><div align='center'><font face='Geneva,Arial,Helvetica,sans-serif' size='3' color='#FFFFFF'>Carlos Amaral Imóveis</font></div></b></td> </tr> <tr bgcolor='#999999'> <td><b><div align='center'><font face='Geneva,Arial,Helvetica,sans-serif' size='2' color='#FFFFFF'>Informações recuperadas do Banco de Dados</font></div></b></td> </tr> <tr> <td> </td> </tr></table><?php $total = mysql_num_rows($sql);$qtd_colunas = 6; ?> <table width='100%' border='0'> <tr bgcolor='#EEEEEE'> <td width=’5%’> <div align=’left’><font size=’2’ face=’Geneva, Arial,Helvetica,sans-serif’ color=’#000000’><b>Cod</b></font></div></td> <td width=’12%’> <div align=’left’><font size=’2’ face=’Geneva, Arial,Helvetica,sans-serif’ color=’#000000’><b>Tipo</b></font></div></td> <td width=’38%’> <div align=’left’><font size=’2’ face=’Geneva, Arial,Helvetica,sans-serif’ color=’#000000’><b>Descrição</b></font></div></td> <td width=’5%’> <div align=’left’><font size=’2’ face=’Geneva, Arial,Helvetica,sans-serif’ color=’#000000’><b>Dorm.</b></font></div></td> <td width=’25%’> <div align=’left’><font size=’2’ face=’Geneva, Arial,Helvetica,sans-serif’ color=’#000000’><b>Bairro</b></font></div></td> <td width=’15%’> <div align=’left’><font size=’2’ face=’Geneva, Arial,Helvetica,sans-serif’ color=’#000000’><b>Valor</b></font></div></td> <?php if( $total > 0 ) { for ($i=0; $i<$total; $i++) { echo "<tr bgcolor='#EEEEEE'>"; $dados = mysql_fetch_array($sql); for ($j=0; $j<$qtd_colunas; $j++) { $nm_coluna = $dados[$j]; echo "<td>$nm_coluna</td>"; } echo "</tr>"; } } else { echo "Nenhum registro encontrado"; }?></body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta assim:

 

primeiramente, elimine o sinal de igual no val nessa linha:

 

$sql = mysql_query("select cod,tip,des,dor,bai,val from $tabela where tip = \"$tip\"and dor = \"$dor\"and val = \"$val\"") or die(mysql_error());

 

deve ficar assim:

 

$sql = mysql_query("select cod,tip,des,dor,bai,val from $tabela where tip = \"$tip\"and dor = \"$dor\"and val \"$val\"") or die(mysql_error());

 

 

 

e nesta linha deve ser feita tal modificação:

 

<td bgcolor='#009999'><div align='center'><select name='val'><option value='(<=300)'>Menor que 300</option><option value='(>300 and <=500)'>Entre 300 e 500</option><option value='(>500 and <=1000)'>Entre 500 e 1000</option><option value='(>1000 and <=2000)'>Entre 1000 e 2000</option><option value='(>2000)'>Acima de 2000</option></div>

 

deve ficar assim:

 

<td bgcolor='#009999'><div align='center'><select name='val'><option value='(<=300)'>Menor que 300</option><option value='(>300 and <=500)'>Entre 300 e 500</option><option value='(>500 and val<=1000)'>Entre 500 e 1000</option><option value='(>1000 and val<=2000)'>Entre 1000 e 2000</option><option value='(>2000)'>Acima de 2000</option></div>

 

espero ter ajudado e qualquer coisa posta aí.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.