Ir para conteúdo
Fórum Script Brasil

Allanrf

Membros
  • Total de itens

    24
  • Registro em

  • Última visita

Posts postados por Allanrf

  1. distinct não da certo, se eu colocar ele funcionaria quase como um group by, me dando os clientes que quero (que são 3), porém não me daria todos os projetos desses clientes...

    o sql em si acho que está certo, porque ele me retorna tudo o que eu quero, o que está errado é a estrutura de exibição que eu quero exibir os clientes e abaixo deles seus projetos...

  2. Olá pessoal do fórum, beleza? :D

    Bom estou com um problema aqui e já quebrei a cabeça, mas não consigo

    resolver...

    Tenho de criar uma listagem de usuários X cliente X obras X

    projetos_recursos

    Então basicamente tenho essa estrutura:

    tabela usuarios:

    id_usuario | nome | login | senha

    tabela cliente:

    id_cliente | nome | ...

    tabela obras:

    id_obra | id_cliente | nome_obra | ...

    tabela projetos_recursos:

    id | id_usuario | id_obra

    Então tenho uma tabela de ligação projetos_recursos para vincular um

    usuário a uma determinada obra.

    O que quero fazer na listagem é:

    Eu listo os usuários do sistema normalmente, quando clico nele envio

    por Ajax o id_usuario para uma outra página, nessa página preciso

    pegar todos os projetos que estão vinculados a esse usuário e os

    clientes donos desses projetos...

    Eu consigo listar mostrando Usuário -> Cliente -> Projeto, PORÉM o

    cliente é listado várias vezes, se eu tenho um cliente com 3 projetos

    esse cliente é listado 1 vez para cada projeto, o que quero é que o

    cliente seja listado 1 unica vez e abaixo dele venha todos os projetos

    desse cliente, porém não consigo achar a estrutura correta para

    isso...

    meu SQL está assim:

    $sql = "SELECT recursos.*, projetos.nome_obra as nome_obra,
    clientes.nome_completo as nome_cliente
                                   FROM tb_projetos_recursos recursos
                                   INNER JOIN tb_obras projetos
                                   ON projetos.id = recursos.id_projeto
                                   INNER JOIN tb_clientes clientes
                                   ON clientes.id = projetos.id_cliente
                                   WHERE recursos.id_usuario = '$id_usuario'
                                   order by clientes.id
                           ";
    Com esse SQL eu consigo todos os projetos que o usuário está alocado, o nome da obra e o nome do cliente, tudo o que quero, porém na hora de exibir é que está o problema...
    $busca_projetos_usuarios = @mysql_query($sql);
    $total = @mysql_num_rows($busca_projetos_usuarios);
    if($total > 0){
       for($j=0; $j<$total; $j++){
           $id_projeto = @mysql_result($busca_projetos_usuarios,$j,"id_projeto");
           $id_usuario = @mysql_result($busca_projetos_usuarios,$j,"id_usuario");
           $nomeCliente = @mysql_result($busca_projetos_usuarios,$j,"nome_cliente");
           $nome_projeto = @mysql_result($busca_projetos_usuarios,$j,"nome_obra");
           ?>
           <tr>
                 <td width="30%" style="padding-left:70px;">-&nbsp;
                     <span class='abre'>
                           <?php
                                   echo $nomeCliente;
                           ?>
                     </span>
                     <span><?=$nome_projeto?></span>&nbsp;&nbsp;
                  </td>
             </tr>
             <?
       }
    }

    é listado o cliente1 uma vez a cada projeto dele, então se ele tem

    tres projetos é listado:

    Cliente1 - Projeto1

    Cliente1 - Projeto2

    Cliente1 - Projeto3

    O que quero é que seja listado Cliente1 - Projeto 1 Projeto2 Projeto3

    Não sei se ficou muito claro minha dúvida, se alguém puder ajudar eu

    agradeço, já perdi muito tempo com isso e não consigo achar uma

    solução...

    Obrigado.

  3. faz td com sessões...

    dependendo do cadastro do cara você disponibiliza o acesso as areas do site através da sessao cadastrada pelo usuario..

    exemplo:

    tenho um cadastro do tipo cliente, então só terei acesso a anuncios do site, comprar e fazer comentarios

    agora com um cadastro do tipo vendedor eu tenho acesso a area de postar anuncios, comentar, comprar e outras funcionalidades, mas essas funcionalidades só serao mostradas se o meu cadastro for do tipo vendedor, então eu crio uma sessao vendedor, se for então eu mostro outras areas do site, senao elas ficam escondidas

  4. opa eae beleza? :D

    pelo que entendi a parte de mostrar automaticamente os dados do cliente voce deverá fazer com AJAX, buscando no banco dependendo do que o usuario digitar (id, nome, email, etc) voce já mostra, isso você faz com AJAX

    o 2º caso voce pode abrir um popup com todos os clientes já listados assim o cara procura e ao clicar você abre os dados do cliente, normal, caso você coloque um input dentro desse popup onde o usuario vai digitando e assim filtrando os dados dos clientes você tb faz isso com AJAX

    da uma pesquisada na net por AJAX que você vai entender...

    vlws

  5. fazer um site em HTML é uma coisa, ter um site funcional é outra

    não adianta voce falar que fez o site todo sendo que só tem HTML

    script pronto tem de monte, mas que adianta ter se voce não vai saber interpretar?

    contrate um profissional que voce não terá dor de cabeça com isso, programar não se aprende da noite pro dia.

  6. <script>
    
    function campo () {
        var valor = true;
        if ((document.frmAjax.nome.value == "")) {
            document.getElementById('mensagem1').innerHTML = "nome em Branco";
            document.frmAjax.nome.focus();
            valor = false;
        }else{
            if ((document.frmAjax.email.value== "")){
                document.getElementById('mensagem2').innerHTML = "email em Branco";
                document.frmAjax.email.focus();
                valor = false;
            }
        }
        if(valor == false){
            return false;
        }
    }
    </script>
    
    <form action="teste.php" method="post" name="frmAjax">
    nome: <input type="text" name="nome">
    <div id="mensagem1"></div>
    
    Email: <input type="text" name="email">
    <div id="mensagem2"></div>
    
    <input type="submit" value="envia" onclick="return campo()">
    
    </form>

    usa document.getelementbyid pra pegar a div, o document.all só funciona pro internet explorer...

  7. como faço para mudar o type de um campo input para qualquer outro?

    <script language="javascript" type="text/javascript">
        function altera(obj){
            var obj = document.getElementById('botao').type;
            linha = document.createElement('text');
            obj.appendChild(linha);
        }
    </script>
    
    
    <input id="botao" type="button" value="mostrar" style="background-color:#ff0000;"onclick="altera(this)" />

    como faço essa alteração?

  8. meu programa pede o código do cliente para efetuar uma troca, eu queria por em um quick report esse código e os dados do cliente referente aquele código que eu informo em um edit...

    no form principal eu informo o código, ai aperto um botao para imprimir que da a previsao de como vai sair a impressao...

    queria colocar os dados do cliente referente aquele código no quickreport...

  9. este tbresultado é uma tabela que eu pego a partir de itens selecionados no meu dbgrid...

    pego os valores de um txt e jogo pra uma tabela (tbtroca) nela comparo com outra (tbprodutos) onde for igual eu mostro no meu dbgrid... seleciono o que eu quero e jogo para outra tabela (tbresultado), mas a qtde que vem para min na tbresultado é 3 para todos meus itens (no caso 3 é a 1º qtde que tenho no dbgrid)

    ele não pega a qtde de cada item...

    tipo como eu faço para comparar duas tabelas e onde for igual eu colocar em outra tabela?

  10. como faço para ler uma tabela e colocar os valores dela em outra?

    eu tenho 2 tabelas, tbtroca e tbtemporaria, quero pegar os valores da tbtroca e jogar na tbtemporaria, mas isso tp assim:

    tbtroca campos (preço e QTDE)

    tbtemporaraia campos (preço, QTDE e TOTAL)

    quero pegar e colocar no campo preço da tabela Temporaria os valores preço/QTDE da tabela de troca...

    eu tentei fazendo assim:

    tbTemporaria.Append;

    tbTemporariaPRECO.value:=tbTrocaPreco.value/tbTrocaQTDE.value;

    tbTemporariaTOTAL.value:=tbresultadoQTDE.value*tbTemporariaPRECO.value;

    mas a minha tbtemporaria para todos os valores dela fica com o mesmo valor, tp meu 1º produto vale 3,09, o segundo vale 3,15

    ele coloca TODOS como 3,09 e não o 1º só para o 2º ficar 3,15 o 3º 2,78, etc

    :/

  11. tenho 2 querys (QUERY_SOMAR e QUERY_CALULAR)

    na minha "QUERY_CALCULAR" eu pego e divido dois campos da minha tabela, o campo "preço" e o campo "quantidade"

    para obter quanto vale a unidade do meu produto, o preço dele unitario

    QUERY_CALCULAR: select preço/QTDE from tbResultado

    na "QUERY_SOMAR" eu pego e somo um campo da minha tabela "tbResultado", ela pega e soma todos os valores desse campo e me da um valor...

    QUERY_SOMAR: select sum(preço)*QTDE from tb resultado

    queria saber se tem como eu "juntar" essas duas querys, para quando eu clicar no botao "CALCULAR" ele me der o total multiplicando o valor de cada unidade que obtenho atraves da "QUERY_CALCULAR" vezes o valor de quantidades que tenho..

    ex: (se fosse em 1 query só)

    select QTDE from tbResultado; (QUERY_QUANTIDADE, no caso eu criaria outra query)

    select (preço/QUERY_QUANTIDADE) from tbResultado; (para saber o valor de cada produto) (QUERY_CALCULAR)

    select QUERY_CALCULAR*QUERY_QUANTIDADE from tbResultado; (para saber o total do valor dos produtos)

    mais ou menos assim...

  12. quero que a pessoa coloca o número do cupom fiscal no meu programa, quando ela colocar eu vou no diretório "H:\mov03" e procuro nesse diretório o meu arquivo txt que tem o nome do meu cupom, eu não sei o nome do meu arquivo, ele sera identico ao nome que a pessoa colocar no meu programa, como faço isso?

    preciso MUITO saber disso por favor...

×
×
  • Criar Novo...