Ir para conteúdo

POWERED BY:

Arquivado

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

ArthurFreitag

erro em consulta em cima de exemplo

Recommended Posts

oi já postei esse código no tópico que eu peguei o exemplo mas Às vezes os caras não veêm intaum posto separadamente aqui ai qqr pessoa pode passar ai e tentar me ajudar ai . É que eu construi uma consulta em cima de um exemplo que achei aqui no fórum mas ela ta retornando um errinho. E preciso concertar isso.

 

O código:

PHP

[*]

[*]

[*]<?php

[*]require ('conecta.inc')

[*]$db = mysql_select_db ("nipe_bd");

[*]

[*]$nome = $_POST['nome']

[*]$recursos = $_POST['recursos']

[*]$tema = $_POST['tema']

[*]$estado = $_POST['estado']

[*]

[*]

[*]$auxwheresql = array()

[*]

[*]if (!empty($nome)) { 

[*] $auxwheresql[] = "nome LIKE '%{$nome}%'"

[*]} 

[*]if (!empty($recursos)) { 

[*] $auxwheresql[] = "recursos = '{$recursos}'"

[*]} 

[*]if (!empty($tema)) { 

[*] $auxwheresql[] = "tema = '{$tema}'"

[*]} 

[*]if (!empty($estado)) { 

[*] $auxwheresql[] = "estado = '{$estado}'"

[*]} 

[*]

[*]$consulta = "SELECT DISTINCT tema, estado, recursos FROM projetos"

[*]if (count($auxwheresql)) { 

[*] $consulta .= ' WHERE '. join(' AND ', $auxwheresql)

[*]} 

[*]$consulta.= ' ORDER BY nome'; 

[*]$rsbusca = mysql_query($consulta)

[*]if(!$rsbusca){echo mysql_error();exit()

[*]}else

[*]$total = mysql_num_rows($rsbusca)

[*]echo $rsbusca; 

[*]} 

[*]

[*]?>

[*]

[*]

 

e o que a consulta retorna é isso:

 

Resource ID #4

 

O q eu preciso fazer pra resolver isso?

 

______________________________________________________________

 

:wacko:

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual linha dá o erro ???

Compartilhar este post


Link para o post
Compartilhar em outros sites

brigado pela respostas mas qdo você diz dar um echo em consulta você quer dizer por consulta no lugar de rsbusca na linha 37?

<{POST_SNAPBACK}>

Isso mesmo! ;)

<{POST_SNAPBACK}>

Feito a devida mudança como consta no código abaixo:

 

PHP

[*]<?php

[*]require ('conecta.inc')

[*]$db = mysql_select_db ("nipe_bd");

[*]

[*]$nome = $_POST['nome']

[*]$recursos = $_POST['recursos']

[*]$tema = $_POST['tema']

[*]$estado = $_POST['estado']

[*]

[*]

[*]$auxwheresql = array()

[*]

[*]if (!empty($nome)) { 

[*] $auxwheresql[] = "nome LIKE '%{$nome}%'"

[*]} 

[*]if (!empty($recursos)) { 

[*] $auxwheresql[] = "recursos = '{$recursos}'"

[*]} 

[*]if (!empty($tema)) { 

[*] $auxwheresql[] = "tema = '{$tema}'"

[*]} 

[*]if (!empty($estado)) { 

[*] $auxwheresql[] = "estado = '{$estado}'"

[*]} 

[*]

[*]$consulta = "SELECT DISTINCT tema, estado, recursos FROM projetos"

[*]if (count($auxwheresql)) { 

[*] $consulta .= ' WHERE '. join(' AND ', $auxwheresql)

[*]} 

[*]$consulta.= ' ORDER BY nome'; 

[*]$rsbusca = mysql_query($consulta)

[*]if(!$rsbusca){echo mysql_error();exit()

[*]}else

[*]$total = mysql_num_rows($rsbusca)

[*]echo $consulta; 

[*]} 

[*]?>

 

Surtiu este resultado:

 

SELECT DISTINCT tema, estado, recursos FROM projetos WHERE recursos = 'de R$50.000,01 à 200.000,00' AND tema = 'Saúde' AND estado = 'RS' ORDER BY nome

 

e intão? Complicou? :blink: Esqueci de dizer o php é 5.0.4 e o Serv. Apache 1.3.31 e o Mysql ( 4.1 eu acho) B)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vê assim:

 

SELECT    tema,    estado,    recursosFROM    projetosWHERE    recursos = 'de R$50.000,01 à 200.000,00'  AND    tema = 'Saúde'  AND    estado = 'RS'GROUP BY    temaORDER BY    nome ASC

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vê assim:

 

SELECT    tema,    estado,    recursosFROM    projetosWHERE    recursos = 'de R$50.000,01 à 200.000,00'  AND    tema = 'Saúde'  AND    estado = 'RS'GROUP BY    temaORDER BY    nome ASC

<{POST_SNAPBACK}>

Kra continua td igual, mesmo resultado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Rapaz,

não se imprime a variável da consulta esperando retornar dados da tabela...

 

No lugar de:

PHP

[*]echo $consulta;

 

Coloque:

PHP

[*]echo "

"
;

[*]while ($rs = mysql_fetch_assoc($rsbusca))

[*]{

[*] print_r($rs);

[*]}

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.