1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

[RESOLVIDO]Mostrar campos encontrados e Pergunta javascript

Discussão em 'Web Development' iniciada por iGMBroken, 13 de Junho de 2007. (Respostas: 8; Visualizações: 1114)

  1. iGMBroken

    iGMBroken Power Member

    Boas pessoal, dps de ter o procrar a funcionar, ele apenas mostra a palavra encontrada.

    eu quero quero que ele mostre em vez da palavra toda a linha que encontrou.

    tipo procuramos por "sony", é um fornecedor. eu quero que para alem de mostrar só sony, apareça:

    Fornecedor | Tipo de hardware | ID |

    Sony | Monitor | 50


    por exemplo.

    quando faço a procura pela palavra "sony" ele realmente encontra, mas é so assim:

    "sony" pk existe na bd.

    se nao perceberem a ideia posso fazer com fotos.
    abraços
     
    Última edição: 14 de Junho de 2007
  2. shello

    shello Moderador
    Staff Member

    Se estas a usar SQL, então na query deves por, a seguir de SELECT, separados por vírgulas, os nomes dos campos correspondentes aos que queres obter.
    Supondo que os nomes que deste são os nomes das colunas, e a tabela é Material, então deve ser algo do género:
    Código:
    SELECT Fornecedor, `Tipo de hardware`, ID
    FROM Material
    WHERE Fornecedor = 'Sony';
     
    Última edição: 13 de Junho de 2007
  3. capricorn

    capricorn Power Member

    ou com código ;)

    estás a programar em que linguagem?
     
  4. iGMBroken

    iGMBroken Power Member

    PHP e a linguagem que tenho estado a desenvolver este pequeno projecto.
     
  5. iGMBroken

    iGMBroken Power Member

    PHP:
    <? 
        
    $query "SELECT id,caracteristicas,tipo,quantidade,data,estado,local,garantia,fornecedor FROM hardware '%$palavra%'";
     
          
    // Ordenar?
       
    if (isset ($_GET['ordem']) ) $query .= " ORDER BY " mysql_real_escape_string($_GET['ordem']);
       
    $resultado mysql_query($query,$db);
       if (
    $resultado
        {
        while (
    $linha mysql_fetch_array($resultado)) {
      
    ?>
     
           <table align="center" class="estrutura">
                <TR align="center">
                  <TD width="33" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=id">ID</a></strong></span></td>
                  <TD width="146" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=caracteristicas">Caracteristicas</a></strong></span></td>
                  <TD width="80" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=tipo">Tipo</a></strong></span></td>
                  <TD width="65" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=quantidade">Quantidade</a></strong></span></td>
                  <TD width="86" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=data">Data</a></strong></span></td>
                  <TD width="106" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=estado">Estado</a></strong></span></td>
                  <TD width="76" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=local">Local</a></strong></span></td>
                  <TD width="76" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=garantia">Garantia</a></strong></span></td>
                  <TD width="169" height="23"><span><strong><a href="estrutura.php?ordem=fornecedor">Fornecedor</a></strong></span></TD>
                </TR>
     
     
                <TR align="center" valign="middle">
                  <TD><? echo $linha['id']?></td>
                  <Td><? echo $linha['caracteristicas']?></td>
                  <TD><? echo $linha['tipo']?></td>
                  <Td><? echo $linha['quantidade']?></Td>
                  <TD><? echo $linha['data']?></Td>
                  <TD><? echo $linha['estado']?></Td>
                  <TD><? echo $linha['local']?></Td>
                  <TD><? echo $linha['garantia']?></Td>
                  <TD><? echo $linha['fornecedor']?></Td>
                </TR>
                <?
       }
      }
      ?>
              </table>

    epah ja funciona mas aparece duplicado os resultados tipo em vez de aparecer

    Fornecedor | iD

    sony | 50
    LG | 90

    aparece

    Fornecedor | iD

    Sony | 50

    Fornecedor | iD

    LG | 50

    -----------
    esta a reptir o campo que devia so aparecer uma vez Fornecedor | iD.

    outro problema que tenho tb, é:

    dps de fazer uma pesquisa ele apresenta um determinado numero de resultados, onde existe a opção apagar por exemplo.

    quando fizer apagar ele vai perguntar se quero mesmo apagar ou nao (ate aqui tudo bem) dps se fizer não ele tem de voltar á mesma pesquisa.

    como faço isto?
     
    Última edição: 14 de Junho de 2007
  6. p3dro

    p3dro Power Member

    tens de tirar este código de dentro do ciclo, senão os "headers" estão smp a ser construídos
    Código:
           <table align="center" class="estrutura">
                <TR align="center">
                  <TD width="33" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=id">ID</a></strong></span></td>
                  <TD width="146" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=caracteristicas">Caracteristicas</a></strong></span></td>
                  <TD width="80" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=tipo">Tipo</a></strong></span></td>
                  <TD width="65" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=quantidade">Quantidade</a></strong></span></td>
                  <TD width="86" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=data">Data</a></strong></span></td>
                  <TD width="106" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=estado">Estado</a></strong></span></td>
                  <TD width="76" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=local">Local</a></strong></span></td>
                  <TD width="76" height="23"><span class="style3"><strong><a href="estrutura.php?ordem=garantia">Garantia</a></strong></span></td>
                  <TD width="169" height="23"><span><strong><a href="estrutura.php?ordem=fornecedor">Fornecedor</a></strong></span></TD>
                </TR>
    
    em relação à 2ª pergunta, podes por ex. fazer uma validação javascript no onClick do link em k confirma se quer ou não remover o registo, se o cliente estiver javascript activo e escolher o "Não" não é feita nenhuma chamada ao servidor e consequentemente nada é alterado na página; depois no server-side, para manteres a pesquisa podes passar por ex as variáveis no href que faz o pedido para remover os registos, por ex:

    Código:
    <a href='estrutura.php?&accao=remover_registo&ordem=".$_GET["ordem"]."&palavra=".$_GET["palavra"]."'>Remover Registo</a>
    
    depois podes ir "buscá-las" novamente e reconstruir a página com a tal pesquisa
     
    Última edição: 14 de Junho de 2007
  7. iGMBroken

    iGMBroken Power Member

    Primeira questão está resolvida, ja desapareceu a reprodução de linhas excessivas.
    ----------------------

    por acaso nao sabes o codigo do javascript?

    e pk eu ja vi isso no portugal-a-programar.org mas n encontro o codigo xD, se puderes colocar agradecia :D
     
    Última edição: 14 de Junho de 2007
  8. p3dro

    p3dro Power Member

    o código para pedir a confirmação em javascript? se sim, tenta adaptar isto ao teu problema:

    PHP:
    <html>
      <head>
        <script type="text/javascript">
        function ConfirmarRemover(){
          return confirm("Deseja remover este registo?");
        }
        </script>
      </head>
      <body>
        <?php
          
    echo "<a onClick='return ConfirmarRemover();' href='estrutura.php?accao=remover_registo&ordem=".$_GET["ordem"]."&palavra=".$_GET["palavra"]."'>Remover Registo</a>";
        
    ?>
      </body>
    </html>
     
  9. iGMBroken

    iGMBroken Power Member

    ok ja consegui :D
     
    Última edição: 14 de Junho de 2007

Partilhar esta Página