Socorro! Estou ficando impaciente. [RESOLVIDO]

1. Socorro! Estou ficando impaciente. [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 28/01/2014 - 16:04h

Olá de novo pessoal, beleza? Então, estou fazendo umas modificações de um site e preciso que 2 valores do mysql só apareçam quando forem maiores do que 0. Acontece que, eu tentei usar a função empty e não funcionou ( nada era exibido, mesmo com os campos preenchidos ) e tentei usar o seguinte:


<?php if( $l['dormitorios'] > 0 ) { ?><p>Dormitórios:<?php echo $l['dormitorios']; ?></p><?php }?>
<?php if( $l['garagem'] > 0 ) { ?><p>Garagem: <?php echo $l['garagem']; ?> Vaga(s)</p><?php }?>


Usei o mesmo <?php if ($l['xxx'] > 0 { ?> em outras páginas do site e funcionou perfeitamente. Como eu resolvo esta situação? O script é:


<?php
include("config.php");
include("tags.php");
?>
<?php echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?".">"; ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Buscar imóveis - <?php echo $nomeL . ' - ' . $slogan; ?></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="css/geral.css" rel="stylesheet" type="text/css" />
</head>
<body>

<!-- HEADER -->
<div id="header">
<?php include('topo.php'); ?>
</div>
<center>
<form name="busca" id="busca" method="post" action="busca.php">
<table width="936" border="0">
<tr>
<td width="129"><span class="Fleft busca_imovel_pag_detalhes">
<label>Negócio:</label>
</span></td>
<td width="123"><label class="busca_imovel_pag_detalhes">Tipo:</label></td>
<td width="123"><span class="Fleft">
<label class="Fleft busca_imovel_pag_detalhes">Cidade:</label>
</span></td>
<td width="121"><label class="Fleft busca_imovel_pag_detalhes">Bairro:</label></td>
<td width="131"><span class="Fleft">
<label class="Fleft busca_imovel_pag_detalhes">Valor mínimo:</label>
</span></td>
<td width="140"><label class="Fleft busca_imovel_pag_detalhes">Valor máximo:</label></td>
<td width="139">&nbsp;</td>
</tr>
<tr>
<td><span class="Fleft">
<select name="negocio_" class="campos_imovel_detalhes">
<option value="" >Todos</option>
<?php
$sql = mysql_query("SELECT id, tipo FROM negocio_tipo WHERE ativo='S'");
while( $linha = mysql_fetch_array( $sql ) ) {
echo '<option value="'.$linha['id'].'">'.$linha['tipo'].'</option>';
}
?>
</select>
</span></td>
<td><select name="tipo_" class="campos_imovel_detalhes">
<option value="">Todos</option>
<?php
$sql = mysql_query("SELECT id, tipo_nome FROM imoveis_tipo WHERE ativo='1'");
while( $linha = mysql_fetch_array( $sql ) ) {
echo '<option value="'.$linha['id'].'">'.$linha['tipo_nome'].'</option>';
}
?>
</select></td>
<td><span class="Fleft">
<select name="cidade_" onChange="Dados(this.value);" class="campos_imovel_detalhes">
<option value="">Todas</option>
<?php
$sql = mysql_query("SELECT id, cidade FROM cidades WHERE ativo='1'");
while( $linha = mysql_fetch_array( $sql ) ) {
echo '<option value="'.$linha['id'].'">'.$linha['cidade'].'</option>';
}
?>
</select>
</span></td>
<td><select name="bairro_" id="bairro_" class="campos_imovel_detalhes">
<option id="opcoes" value="">Todos</option>
</select></td>
<td><span class="Fleft">
<input type="text" name="valorMin_" onKeyPress="mascara(this,Metros)" class="campos_imovel_detalhes"/>
</span></td>
<td><input type="text" name="valorMax_" onKeyPress="mascara(this,Metros)" class="campos_imovel_detalhes"/></td>
<td><input srname="submit" type="submit" class="btnEnviar botao_imovel_detalhes" value=" " ></td>
</tr>
</table>
</form>
</center>
<br class="clear" />
<!-- AND HEADER -->

<!-- CONTENT -->
<div id="content">

<h1>Busca de Imóveis</h1>

<?php

$cidade_ = strip_tags( $_POST['cidade_'] );
$bairro_ = strip_tags( $_POST['bairro_'] );
$tipo_ = strip_tags( $_POST['tipo_'] );
$negocio_ = strip_tags( $_POST['negocio_'] );
$valorMin_ = strip_tags( $_POST['valorMin_'] );
$valorMax_ = strip_tags( $_POST['valorMax_'] );
$codigo_ = strip_tags( $_POST['codigo_'] );

if( isset($_GET['cidade_'] ) ) $cidade_ = strip_tags( $_GET['cidade_'] );
if( isset($_GET['bairro_'] ) ) $bairro_ = strip_tags( $_GET['bairro_'] );
if( isset($_GET['tipo_'] ) ) $tipo_ = strip_tags( $_GET['tipo_'] );
if( isset($_GET['negocio_'] ) ) $negocio_ = strip_tags( $_GET['negocio_'] );
if( isset($_GET['valorMin_'] ) ) $valorMin_ = strip_tags( $_GET['valorMin_'] );
if( isset($_GET['valorMax_'] ) ) $valorMax_ = strip_tags( $_GET['valorMax_'] );
if( isset($_GET['codigo_'] ) ) $codigo_ = strip_tags( $_GET['codigo_'] );
/* MONTA CRITERIOS DE BUSCA */
$where = "i.ativo ='1'";

if ( !empty( $cidade_ ) ) {
$where .=" AND i.id_cidade='$cidade_'";
}
if ( !empty( $bairro_ ) ) {
$where .=" AND i.bairro='$bairro_'";
}

if ( !empty( $tipo_ ) ) {
$where .=" AND i.id_tipo_imovel='$tipo_'";
}

if ( !empty( $negocio_ ) ) {
$where .=" AND i.id_negocio_tipo='$negocio_'";
}

if ( !empty( $valorMin_ ) ) {
$where .=" AND i.valor>='$valorMin_'";
}

if ( !empty( $valorMax_ ) ) {
$where .=" AND i.valor<='$valorMax_'";
}

if ( !empty( $codigo_ ) ) {
$where ="i.ativo='1' AND i.codigo='$codigo_'";
}

////////
$sql = mysql_query("SELECT i.*, t.tipo_nome, n.tipo, c.cidade FROM imoveis i
LEFT JOIN imoveis_tipo t ON (t.id = i.id_tipo_imovel)
LEFT JOIN negocio_tipo n ON (n.id = i.id_negocio_tipo)
LEFT JOIN cidades c ON (c.id = i.id_cidade)
WHERE $where") or print(mysql_error());

if (!isset( $_GET["pagina"] ) )
$pagina = 1;
else
$pagina = strip_tags( $_GET["pagina"] );

$max=15;
$inicio = $pagina - 1;
$inicio = $max * $inicio;
$total = mysql_num_rows($sql);

/* calcula a quantidade de produtos sendo exibidos no momento */
$pgs = ceil($total / $max);
$de = $max * $pagina;
if($pagina == $pgs) $de = $total;
$temp = $inicio + 1;
echo "<p>Foram encontrados <b>$total</b> imóveis.</p>";
echo "<p align=\"center\"><b>Página:</b> $pagina de $pgs</p><br /><br />";
//////////

$sql = mysql_query("SELECT i.id, i.valor, i.foto_exibicao, i.quartos, i.garagem, i.codigo, t.tipo_nome, n.tipo AS negocio, c.cidade, c.uf, b.bairro FROM imoveis i
LEFT JOIN imoveis_tipo t ON (t.id = i.id_tipo_imovel)
LEFT JOIN negocio_tipo n ON (n.id = i.id_negocio_tipo)
LEFT JOIN cidades c ON (c.id = i.id_cidade)
LEFT JOIN bairros b ON (b.id = i.bairro)
WHERE $where ORDER BY valor ASC LIMIT $inicio, $max") or print(mysql_error());

while( $linha = mysql_fetch_array( $sql ) ) {

?>
<div class="listaImoveis">
<a title="<?php echo $linha['negocio'] . ' ' . $linha['tipo_nome'] .' em '. $linha['cidade'] . ' /' . $linha['uf']; ?>" href="detalhes_imovel.php?Cod=<?php echo $linha['id'];?>"><img src="img_imoveis/<?php echo $linha['foto_exibicao']; ?>" width="200" height="130" alt="<?php echo $linha['negocio'] . ' ' . $linha['tipo_nome'] .' em '. $linha['cidade'] . ' /' . $linha['uf']; ?>" /></a>

<div class="listaImoveisbox">
<p><b><?php echo $linha['tipo_nome']; ?></b></p>
<p><?php echo $linha['negocio']; ?></p>
<p>C&oacute;digo: <?php echo $linha['codigo']; ?></p>
<p class="valor_busca">Valor: <?php echo ( empty( $linha['valor'] ) || $linha['valor'] == '0.00' ? 'Consulte-nos' : 'R$ ' . number_format( $linha['valor'], 2, ',', '.') ); ?></p>
</div>

<div class="listaImoveisbox">
<p><b><?php echo $linha['cidade'] . '/' . $linha['uf']; ?></b></p>
<p><?php echo $linha['bairro']; ?></p>
<p>Quartos: <?php echo $linha['quartos']; ?></p>
<p>Garagem: <?php echo $linha['garagem']; ?> vaga(s)</p>
</div>

<div class="listaImoveisbox">
<p class="fRight"><a title="<?php echo $linha['negocio'] . ' ' . $linha['tipo_nome'] .' em '. $linha['cidade'] . ' /' . $linha['uf']; ?>" href="detalhes_imovel.php?Cod=<?php echo $linha['id'];?>"><img src="imagens/img-descricao-busca.jpg" border="0"></a></p>
</div>

</div>
<br class="clear" />
<?php } ?>
<br /><br /><br /><br />

<?php
echo "<p align=\"center\"><b>Página:</b> $pagina de $pgs</p><br /><br />";
?>

<div id="paginacao">
<?php
// Calculando pagina anterior
$menos = $pagina - 1;
// Calculando pagina posterior
$mais = $pagina + 1;
$pgs = ceil($total / $max);

$url = "cidade_=$cidade_&bairro_=$bairro_&tipo_=$tipo_&negocio_=$negocio_&valorMin_=$valorMin_&valorMax_=$valorMax_&codigo_=$codigo_";

if($pgs > 1 )
{
if($menos > 7)
echo "<a title='primeira pagina' class='lk' href='busca.php?$url'>Início</a> ";

if($menos >0)
echo "<a title='pagina anterior' class='lk' href='busca.php?$url&pagina=$menos'>Anterior</a> ";

if (($pagina-7) < 1 )
$anterior = 1;
else
$anterior = $pagina-7;

if (($pagina+7) > $pgs )
$posterior = $pgs;
else
$posterior = $pagina + 7;

for($i=$anterior;$i <= $posterior; $i++)
if($i != $pagina)
echo " <a title='pagina $i' href='busca.php?$url&pagina=$i'>$i</a>";
else
echo "<strong>$i</strong>";

if($mais <= $pgs)
echo " <a title='proxima pagina' class='lk' href='busca.php?$url&pagina=$mais'>Próxima</a>";

if($mais < ($pgs - 3))
echo " <a title='ultima pagina' class='lk' href='busca.php?$url&pagina=$pgs'>Última</a>";
}
?>
</div>

</div>
<br class="clear" />
<!-- AND CONTENT -->


<!-- FOOTER -->
<div id="footer">
<?php include('rodape.php'); ?>
</div>
<!-- FOOTER -->
</body>
</html>


Obrigado desde já


  


2. Re: Socorro! Estou ficando impaciente. [RESOLVIDO]

Luis R. C. Silva
luisrcs

(usa Linux Mint)

Enviado em 28/01/2014 - 20:05h

Mas você não escreveu que seria maiores que 1? Por que colocou no código < 0 ?


3. O código

Perfil removido
removido

(usa Nenhuma)

Enviado em 29/01/2014 - 09:40h

Não encontrei no código que você postou esse if que foi mencionado no seu tópico, explique claramente o que você quer fazer no código, qual o campo ou os campos que você quer que apareça apenas quando for maior que zero, não esqueça de colocar no esquema do banco de dados o campo como inteiro.


4. Re: Socorro! Estou ficando impaciente. [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 29/01/2014 - 13:55h

Desculpe, uma parte do código estava errada, confundi o "Dormitórios" com "Quartos".

A Div na qual ele se localiza é:


<div class="listaImoveisbox">
<p><b><?php echo $linha['cidade'] . '/' . $linha['uf']; ?></b></p>
<p><?php echo $linha['bairro']; ?></p>
<p>Quartos: <?php echo $linha['quartos']; ?></p>
<p>Garagem: <?php echo $linha['garagem']; ?> vaga(s)</p>
</div>


Os campos Quartos e Garagem só devem ser exibidos se o valor deles for maior que zero. Apenas estes dois campos.

Nesta parte, eu havia utilizado aquele script que mostrei no inicio do tópico, como Dormitórios, mas meu cliente pediu para modificar, mas enfim.. de ambas as formas não funcionou. Nem quando pus dormitórios, nem quando pus quartos, e com esse mesmo script. Os valores no BD estão como inteiros, foi a primeira coisa que chequei!


5. Re: Socorro! Estou ficando impaciente. [RESOLVIDO]

Luis R. C. Silva
luisrcs

(usa Linux Mint)

Enviado em 31/01/2014 - 22:56h

Quando imprime isso: <p>Quartos: <?php echo $linha['quartos']; ?></p> o que aparece?


6. Re: Socorro! Estou ficando impaciente. [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 01/02/2014 - 03:08h

Aparece a quantidade de quartos, normal, exatamente o que é para aparecer, mas vou explicar novamente:

Preciso que esse valor só seja printado na tela quando o valor for maior que zero, coloquei o MESMO script que pus no resto dos scripts para aparecer os valores apenas maiores que zero, entretanto, não está funcionando.


7. Re: Socorro! Estou ficando impaciente. [RESOLVIDO]

shoujo
shoujo

(usa Slackware)

Enviado em 01/02/2014 - 05:45h

No começo voce postou:

Olá de novo pessoal, beleza? Então, estou fazendo umas modificações de um site e preciso que 2 valores do mysql só apareçam quando forem maiores do que 0. Acontece que, eu tentei usar a função empty e não funcionou ( nada era exibido, mesmo com os campos preenchidos ) e tentei usar o seguinte:

<?php if( $l['dormitorios'] > 0 ) { ?><p>Dormitórios:<?php echo $l['dormitorios']; ?></p><?php }?>
<?php if( $l['garagem'] > 0 ) { ?><p>Garagem: <?php echo $l['garagem']; ?> Vaga(s)</p><?php }?>

Depois voce postou

speculator escreveu:

Desculpe, uma parte do código estava errada, confundi o "Dormitórios" com "Quartos".

A Div na qual ele se localiza é:


<div class="listaImoveisbox">
<p><b><?php echo $linha['cidade'] . '/' . $linha['uf']; ?></b></p>
<p><?php echo $linha['bairro']; ?></p>
<p>Quartos: <?php echo $linha['quartos']; ?></p>
<p>Garagem: <?php echo $linha['garagem']; ?> vaga(s)</p>
</div>


Os campos Quartos e Garagem só devem ser exibidos se o valor deles for maior que zero. Apenas estes dois campos.

Nesta parte, eu havia utilizado aquele script que mostrei no inicio do tópico, como Dormitórios, mas meu cliente pediu para modificar, mas enfim.. de ambas as formas não funcionou. Nem quando pus dormitórios, nem quando pus quartos, e com esse mesmo script. Os valores no BD estão como inteiros, foi a primeira coisa que chequei!


olha so no de cima vc usou a variavel $l, no de baixo vc usou $linha.qual a variavel certa?


8. Re: Socorro! Estou ficando impaciente. [RESOLVIDO]

Luis R. C. Silva
luisrcs

(usa Linux Mint)

Enviado em 01/02/2014 - 10:41h

Tentou assim:


<div class="listaImoveisbox">
<p><b><?php echo $linha['cidade'] . '/' . $linha['uf']; ?></b></p>
<p><?php echo $linha['bairro']; ?></p>
<p>Quartos:
<?php
if($linha['quartos'] > 0){
echo $linha['quartos'];
}
?>
</p>
<p>Garagem: <?php echo $linha['garagem']; ?> vaga(s)</p>
</div>



9. Re: Socorro! Estou ficando impaciente. [RESOLVIDO]

Luis R. C. Silva
luisrcs

(usa Linux Mint)

Enviado em 01/02/2014 - 10:45h

rei_astro escreveu:

Tentou assim:


<div class="listaImoveisbox">
<p><b><?php echo $linha['cidade'] . '/' . $linha['uf']; ?></b></p>
<p><?php echo $linha['bairro']; ?></p>
<p>Quartos:
<?php
if($linha['quartos'] > 0){
echo $linha['quartos'];
}
?>
</p>
<p>Garagem: <?php echo $linha['garagem']; ?> vaga(s)</p>
</div>


Outra coisa, se o campo não for preenchido, ele retorna null. Então ficaria assim:


<div class="listaImoveisbox">
<p><b><?php echo $linha['cidade'] . '/' . $linha['uf']; ?></b></p>
<p><?php echo $linha['bairro']; ?></p>
<p>Quartos:
<?php
if($linha['quartos'] > 0 || $linha['quartos'] == !null){
echo $linha['quartos'];
}
?>
</p>
<p>Garagem: <?php echo $linha['garagem']; ?> vaga(s)</p>
</div>



10. Re: Socorro! Estou ficando impaciente. [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 01/02/2014 - 14:49h

Não funcionou, ficou assim:

http://oi62.tinypic.com/29g283r.jpg

A palavra quartos está aparecendo, não deveria aparecer também se o valor dela no mysql fosse igual a zero, e a garagem está aparecendo mesmo com o valor sendo igual a zero. É para não aparecer nem a palavra nem o valor nestes casos.


11. Re: Socorro! Estou ficando impaciente. [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 01/02/2014 - 14:54h

Agora que percebi.. a variável certa é $linha, agora funcionou.. Desculpa ai galera! Valeu, me ajudaram muito!


12. Re: Socorro! Estou ficando impaciente. [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 02/02/2014 - 00:06h

<?php
//quartos
if (is_numeric($linha['quartos']) && $linha['quartos']>0)
echo "<p>Quartos: {$linha['quartos']}</p>";
//garagem
if (is_numeric($linha['garagem']) && $linha['garagem']>0)
echo "<p>Garagem: {$linha['garagem']}</p>";
?>






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts