Ir para conteúdo
Fórum Script Brasil
  • 0

Pagina De Resultados


KLeber_Cwb

Pergunta

Olá galera, sou novo por aqui e também no PHP + Mysql..

Tentei ao máximo evitar de postar a dúvida mas não teve jeito...

Supondo que eu tenha a seguinte tabela de imoveis proveniente de uma busca com um campo select:

____________________________________________________________

|Ref. | Finalidade | Bairro | Endereço | Área | Valor |

| |

|1 |Locação | Portao |Rua Itatiaia,1305 | 191 m2 |R$ 600,00 |

|2 |Locação | Bairro Novo |Rua Piquiri, 1420 | 128 m2 |R$ 800,00 |

|3 |Venda | Agua Verde |Rua Qualquer,10 | 210 m2 | R$ 750,00|

|____________________________________________________________|

Necessito que ao clicar na Referencia, 1, 2, 3, e assim por diante, o link chame a página mostrar_imoveis.php com o imóvel referente ao ID clicado..

O link até chama o ID, mas acredito não estar me dando bem com o SELECT do MYSQL..

não sei se fui bem claro...

Abaixo, o código da página mostrar_imoveis.php que estou tentando implantar:

<?php

include ('conexoes/config.php');

$referencia_imovel = $_POST['referencia_imovel'];

$sql = mysql_query("SELECT * FROM imoveis WHERE referencia_imovel ='referencia_imovel'") or die(mysql_error());

$result = mysql_db_query('imoveis', $sql);

$row = mysql_fetch_array($sql);

?>

Resumindo, não sei o que estou fazendo de errado...preciso de um help..

Obrigado..

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

2 Coisas:

A primeira, se você está usando links, você terá que resgastar usando GET e não POST:

$referencia_imovel = $_POST['referencia_imovel'];

passa para:

$referencia_imovel = $_GET['referencia_imovel'];

Segunda coisa, na query... você tem que colocar o $ na frente do referencial_imovel...:

$sql = mysql_query("SELECT * FROM imoveis WHERE referencia_imovel ='referencia_imovel'") or die(mysql_error());

passa para:

$sql = mysql_query("SELECT * FROM imoveis WHERE referencia_imovel ='$referencia_imovel'") or die(mysql_error());

Outra coisa, que não é um erro.. mas não precisa:

$result = mysql_db_query('imoveis', $sql);

$row = mysql_fetch_array($sql);

Você pode usar o mysql_result para pegar o resultado do $sql...

Link para o comentário
Compartilhar em outros sites

  • 0

2 Coisas:

A primeira, se você está usando links, você terá que resgastar usando GET e não POST:

$referencia_imovel = $_POST['referencia_imovel'];

passa para:

$referencia_imovel = $_GET['referencia_imovel'];

Segunda coisa, na query... você tem que colocar o $ na frente do referencial_imovel...:

$sql = mysql_query("SELECT * FROM imoveis WHERE referencia_imovel ='referencia_imovel'") or die(mysql_error());

passa para:

$sql = mysql_query("SELECT * FROM imoveis WHERE referencia_imovel ='$referencia_imovel'") or die(mysql_error());

Outra coisa, que não é um erro.. mas não precisa:

$result = mysql_db_query('imoveis', $sql);

$row = mysql_fetch_array($sql);

Você pode usar o mysql_result para pegar o resultado do $sql...

Alterei da forma que você mencionou, mas mesmo assim o resultado não aparece...

Se eu retirar a parte --WHERE referencia_imovel ='$referencia_imovel'-- se eu clicar em qualquer link da referencia do imovel ele mostra corretamente mas somente o primeiro resultado da tabela.

Então acredito que o erro esteja nesta parte, algo no WHERE que eu esteja fazendo errado.

Link para o comentário
Compartilhar em outros sites

  • 0

Alterei da forma que você mencionou, mas mesmo assim o resultado não aparece...

Se eu retirar a parte --WHERE referencia_imovel ='$referencia_imovel'-- se eu clicar em qualquer link da referencia do imovel ele mostra corretamente mas somente o primeiro resultado da tabela.

Então acredito que o erro esteja nesta parte, algo no WHERE que eu esteja fazendo errado.

Se você tirar o WHERE ele sempre vai buscar a primeira linha pois é o que você está declarando... a sintaxe do WHERE está correta, a única coisa que pode estar dando problema é o nome da coluna estar errado (referencia_imovel) ou o link apontar para uma referência que não existe....

Também de um echo no $referencia_imovel para ver se ele está vindo correto.

Link para o comentário
Compartilhar em outros sites

  • 0

Pior que eu, com meu limitado conhecimento não vi nada de errado.

Abaixo, posto o codigo completo da pagina..

As tabelas estão certas, seus nomes também.

Dei um echo no $referencia_imovel e retornou o valor corretamente.

O problema é que mostra a pagina que preciso "mostra_imovel.php" mas não preenche os campos corretamente com o ID selecionado..

Se alguém puder dar uma verificada, fico no aguardo...

Valeu galera...

<HTML>

<HEAD>

<link rel="stylesheet" type="text/css" href="css/estilos.css">

</head>

<body class="meio">

<?

include ("conexoes/config.php");

$consulta_rapida = $_POST['consulta_rapida'];

$sql = mysql_query("SELECT * FROM imoveis WHERE tipo LIKE '%$consulta_rapida%' ORDER BY 'finalidade'") or die(mysql_error());

$row = mysql_num_rows($sql);

$result = mysql_db_query('imoveis', $sql);

echo "<h5><b>Foram encontrados <font color=\"#ff0000\">\"<b>$row</b>\"</font> imóveis para sua busca: <font color=\"#ff0000\">\"<b>$consulta_rapida</b>\"</font><br></h5>\n";

if(mysql_num_rows($sql))

{

echo "<br><TABLE align=\"right\" border=\"1\" bordercolor=\"#000000\" text=\"#ffffff\" cellpadding=\"0\" cellspacing=\"0\">\n";

echo "<tr bgcolor=\"#CC6600\">\n";

echo "<td width=\"40\"><p><font color=\"#ffffff\"><strong>Ref.</strong></font></p></td>\n";

echo "<td width=\"70\"><p><font color=\"#ffffff\"><strong>Finalidade</strong></font></p></td>\n";

echo "<td width=\"70\"><p><font color=\"#ffffff\"><strong>Bairro</strong></font></p></td>\n";

echo "<td width=\"70\"><p><font color=\"#ffffff\"><strong>Endereço</strong></font></p></td>\n";

echo "<td width=\"45\"><p><font color=\"#ffffff\"><strong>Área</strong></font></p></td>\n";

echo "<td width=\"70\"><p><font color=\"#ffffff\"><strong>Valor</strong></font></p></td>\n";

echo "</tr>\n";

while ($reg = mysql_fetch_array($sql))

{

$id = $reg['referencia_imovel'];

$query = mysql_query ("SELECT * FROM imoveis WHERE '$id'") or die (mysql_error());

$resultado = mysql_query($query);

echo "<tr bgcolor=\"#FFFFFF\">\n";

echo "<td><p align=\"center\"><a href=mostra_imovel.php?id=$id' target='_blank'>

{$reg['referencia_imovel]}</a></p></td>\n";

echo "<td><p>{$reg['finalidade']}</p></td>\n";

echo "<td><p>{$reg['bairro']}</p></td>\n";

echo "<td><p>{$reg['endereco']},{$reg['numero']}</p></td>\n";

echo "<td><p>{$reg['areatotal']} m2</p></td>\n";

echo "<td><p>R$ {$reg['valor']}</p></td>\n";

echo "</tr>\n";

}

echo "</table>\n";

}

else

echo "<br><font color=\"#ff0000\">Nenhum registro encontrado para esta pesquisa.";

?>

</body>

</html>

Link para o comentário
Compartilhar em outros sites

  • 0

A linha:

$query = mysql_query ("SELECT * FROM imoveis WHERE '$id'") or die (mysql_error());

Está errada!, falta a coluna que se refere o argumento... no caso estou assumindo que o campo que guarda as informações do id se chama id...

$query = mysql_query ("SELECT * FROM imoveis WHERE id = '$id'") or die (mysql_error());

Link para o comentário
Compartilhar em outros sites

  • 0

Verdade, estava errada sim.. É que eu havia feito várias alterações pra testar e ver se funcionava...e esqueci de voltar o argumento..

Será que o problema pode estar na página que mostro os resultados ?!

Fora o FORM que é muito grande está desta forma:

<?php

include ('conexoes/config.php');

$selecao = $_GET['referencia_imovel'];

$sql = mysql_query("SELECT * FROM imoveis WHERE referencia_imovel='$selecao'") or die(mysql_error());

$result = mysql_db_query('imoveis', $sql);

$row = mysql_fetch_array($sql);

?>

<?

if(!isset ($referencia_imovel,$row))

?>

E ai vou dando um echo onde preciso dentro do formulario...

Link para o comentário
Compartilhar em outros sites

  • 0

Boa tarde ESerra,

A dúvida ainda é a do Post inicial sim..pois a pagina até chama o link, mas não mostra os resultados no formulario..que é o que comentei no ultimo post.

Quanto ao $result = mysql_db_query('imoveis', $sql);, eu peguei de um outro exemplo para criar a tabela, e como fiz vários testes pra ver a funcionalidade deixei la mesmo ..

Sou novaço em PHP e como tal não mexi porque a principio estava tudo caminhando pra onde e como eu queria...

Criei o form, as tabelas, o link para os ID´s e travei nesta parte de selecionar na tabela o link escolhido.

Agora, retirei a linha desta variável que realmente não tem utilidade...rs

Obrigado.

Link para o comentário
Compartilhar em outros sites

  • 0

Ahhhhhh muleeekkk..rssss

DESCOBRI O PROBLEMA...

Era na página que eu mostrava os imoveis...."mostra_imovel.php"..

Antes estava declarado desta forma:

$selecao = $_GET['referencia_imovel'];

$sql = mysql_query("SELECT * FROM imoveis WHERE referencia_imovel=$selecao'") or die(mysql_error());

$row = mysql_fetch_array($sql);

?>

<?

if(!isset ($referencia_imovel,$row))

?>

E agora mudei para esta:

$selecao = $_GET['id];

$sql = mysql_query("SELECT * FROM imoveis WHERE id='$selecao'") or die(mysql_error());

$row = mysql_fetch_array($sql);

<?

if(!isset ($id,$row))

Mudei a selecao...que antes estava apontando para a referencia do imóvel..e não para o ID...

Obrigado ESerra pelos toques sobre os erros desde o começo do script..

E aguarde, muitas dúvidas ainda surgirão...e se o Deus google não resolver recorrerei ao fórum...

E no que eu puder ajudar com meu (ainda que) limitado conhecimento estarei acompanhando os tópicos..

Obrigado mais uma vez...

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...