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

(Resolvido) Problema com busca


marcosfj1

Pergunta

Boa dia galera,

Seguinte to com o seguinte problema...vou postar o codigo q fica mais facil visualizar:

CAMPOS DE BUSCA:

<td align="Left">
    <input name="pesquisa_valor" size="6" id="pesquisa_valor" type="text" value="<?=$_POST['pesquisa_valor'] ?>" />
    <input name="pesquisa_meses" size="3" id="pesquisa_meses" type="text" value="<?=$_POST['pesquisa_meses'] ?>" />
    <input name="pesquisar" type="submit" value="Pesquisar" /><br>
</td>
CONDIÇÃO PARA VER SE EXISTE ALGO NOS CAMPOS:
if ($_POST['pesquisa_valor'] AND $_POST['pesquisa_meses']) {
    $f_pesquisa = " HAVING CAST(SUM(P.vl_total) AS SIGNED) >= {$_POST['pesquisa_valor']}
                        AND '$meses' >= {$_POST['pesquisa_meses']}";
    $sql_ORDER = " ORDER BY SUM(P.vl_total) DESC ";        
}
A BUSCA:
$sql = "SELECT (MAX(P.dt_pedido)) AS dt_pedido, COUNT(P.id_pedido) AS qt_pedido, SUM(P.vl_total) AS vl_total
            FROM pedido P
            INNER JOIN tabela_cliente C ON C.id_cliente = P.id_cliente
            INNER JOIN tabela_cliente_endereco CE ON CE.id_cliente = P.id_cliente
            WHERE C.st_ativo = 1
            AND P.id_pedido_status = 3
            GROUP BY P.id_cliente
            $f_pesquisa
            $sql_ORDER
            LIMIT 100";
    echo $sql;
ATRAVES DO WHILE EU MOSTRO TODOS OS REGISTROS ENCONTRADOS, MAS ANTES EU FAÇO UM CALCULO PARA SABER quanto TEMPO O CLIENTE não COMPRA NA LOJA:
while ($cp = mysql_fetch_array($req)) {
    
$dataMaior = date("Y/m/d");
$dataMenor = $cp['dt_pedido'];
        
$meses = diffDays($dataMaior,$dataMenor,'months');
Bom esta tudo funcionando eu tenho a quantidade de meses corretos, porem eu quero que na busca seja capaz de buscar o valor da compra do cliente, o q já esta buscando, e a quantidade de meses desde sua ultma compra, e isso q esta pegando....como $meses é uma variavel e não uma coluna de uma tabela não sei como buscar....é possivel comprar o que o usuario digitou no campo de busca, com o valor da variavel que lembrando é o resultado de linhas da tabela, mostrando quanto tempo faz q o cliente não compra. Pelo o que vem impresso eu acho q é porque a varivavel esta vazia pois não é uma coluna, mas como poderia resolver isso? O que vem impresso no echo $sql:
HAVING CAST(SUM(P.vl_total) AS SIGNED) >= 10000 AND '' >= 2 ORDER BY SUM(P.vl_total) DESC LIMIT 100

alguém sabe me ajudar?

Valeu

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

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
      152,1k
    • Posts
      651,7k
×
×
  • Criar Novo...