Ir para conteúdo
Entre para seguir isso  
Rafael Freitas

Exibir dado de um campo do mysql como link

Recommended Posts

Fala galera, dei uma procurada no google mas não consegui resolver meu problema. Confesso que não tenho muito conhecimento ainda.

Por isso, vim pedir ajuda a vocês. Seguinte:

Eu tenho um sisteminha de cadastro de empresas, já consegui cadastrar e etc... Porém, preciso exibir uma informação especifica de um campo, como link. Essa informação é um link para abrir um pdf.

O pdf já está cadastrado, ele é armazenado na pasta "laudo" e o link fica no campo "arquivo" da minha tabela no banco de dados.

Eu só não estou conseguindo fazer com que esse campo "arquivo" seja exibido como um link para o arquivo que está na pasta "laudo"


Quem puder ajudar, agradeço muito.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pq não está conseguindo? Onde você ficou com dúvidas exatamente? Se possível, poste o trecho do código onde você exibe as informações.

 

A ideia é bem simples... Veja se te ajuda:

<?php
$pasta = '/laudo/';
$arquivo = 'teste.pdf';//isso viria do BD
$caminho = $pasta . $arquivo;

echo '<a href="' . $caminho . '">DOWNLOAD</a>';

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa noite Matheus

 

Então brother, eu estou exibindo o campo com esse código <?php echo $ln->arquivo; ?> ele exibe o conteúdo do campo normalmente, só que, eu queria que ele exibisse como um link e não como um texto normal, entende?

Assim, o código exibe vários resultados são mais de 100 empresas, então eu iria colocar direto no banco, pelo phpmyadmin, o link do arquivo pdf em cada empresa. Então, o link direcionaria para a pasta "laudo" e o arquivo, exemplo: meusite.com.br/laudo/arquivo1.pdf dessa forma ele abriria o arquivo direto.

no momento o campo está exibindo o seguinte: Último laudo: laudo/arquivo1.pdf

Agradeço sua ajuda meu amigo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe, mas eu ainda não entendi onde está o problema...

 

Os links são diferentes para cada empresa?

Não, certo?

E a pasta dos arquivos? Há alguma variação, ou é sempre "laudo"?

 

Se foi o que entendi, basta você armazenar o final do arquivo, exemplo "teste.pdf", concatenar/juntar com o endereço/pasta desejados e fazer o link conforme o exemplo que eu citei ali em cima.

 

Você chegou a rodar o exemplo que te passei? Pois ele gera exatamente o que você quer: um link para um arquivo.

 

Poste o trecho do código que exibe essas informações, e se possível uma print ilustrando o que você deseja.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim Matheus, cada empresa tem um arquivo diferente. Cada uma tem um laudo diferente em pdf. Por exemplo: laudo_empresa1.pdf, laudo_empresa2.pdf e etc...

 

Assim, eu faço ele ser exibido como link normal né, coisa boba

<a href="laudo/arquivo1.pdf" target="_blank">Clique para abrir</a>

Porém, o arquivo1.pdf abriria para todas as empresas. Eu preciso que ele abra o pdf de cada empresa. Acho que seria algo utilizando o id da empresa cadastrado no banco né? Só que como eu faria isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
Entre para seguir isso  

  • Conteúdo Similar

    • Por Jefferson andre
      Ola, estou criando um contador de acessos diario mas nao funciona, a tabela tem o campo data no formato date e o campo contador int(10)
       
      A ideia eh verificar a data e se nao existir incluir na tabela, se existir adicionar ao contador
       
      Parece que o erro esta no formato da data, nem manualmente consigo incluir na tabela via localhost ou na hospedagem da google
       
      Agradeço qualquer ajuda
       
      <?php // fazendo uma conexão com o banco de dados include("conexao.php"); // grava a data atual em uma variavel date_default_timezone_set('America/Sao_Paulo'); $date = date('d-m-Y'); //$sql = "SELECT codigo FROM contador"; $resultado = $arquivo->query("SELECT data,contador FROM contador_diario WHERE data = '$date'"); if (mysqli_num_rows($resultado)== true){ // registro ja existe } else { // resultado nao encontrado entao inserir $sql = "INSERT INTO contador_diario ('data', 'contador') VALUES ('$date', '1')"; if ($arquivo->query($sql) == TRUE) { echo "Data cadastrada com sucesso"; } else { echo "Erro: " . $sql . "<br>" . $arquivo->error; } } // refaz a pesquisa para registrar o contador $resultado = $arquivo->query("SELECT data,contador FROM contador_diario WHERE data = '$date'"); // igualar a array a uma variavel $linha=mysqli_fetch_array($resultado); $cod_2 = $linha["contador"]+1; // lista a variavel //echo "<font face='Arial'><span class='style14'>$cod_2</span></font>"; $sql = "UPDATE contador_diario SET contador=$cod_2"; if ($arquivo->query($sql) === TRUE) { // echo "Alteração efetuada com sucesso"; } else { // echo "Erro alterando o contador de visitas diario" . mysqli_error($arquivo); } // fecha a conexao mysqli_close($arquivo); ?>  
    • Por gersonab
      Tenho este sql que funciona normal:
      <?php $idtor = (int)$_GET['id_tor']; $dia = $_GET['dia']; $sql3 = "SELECT * FROM cantos INNER JOIN campeonato ON id_camp = id_campeonato INNER JOIN torneio ON id_tor = id_torneio WHERE data = :dia AND id_torneio = :idtor ORDER BY cantosfim DESC, pontos DESC, cantos DESC"; $stmt = $pdo->prepare($sql3); $stmt->bindParam(':idtor', $idtor); $stmt->bindParam(':dia', $dia); $stmt->execute(); while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { ?> porém este outro não retorna nada, nem erro...
      <?php $idtor = (int)$_GET['id_tor']; $consul = "SELECT id_cantos, id_torneio, id_campeonato, SUM(cantosfim) AS cantfin, SUM(pontos) AS pontfin FROM cantos INNER JOIN campeonato ON id_camp = id_campeonato INNER JOIN torneio ON id_tor = id_torneio WHERE id_tor = :idtor ORDER BY pontfin DESC, cantfin DESC"; $stmt = $pdo->prepare($consul); $stmt->bindValue(':idtor', $idtor); $stmt->execute(); while ($lin = $stmt->fetch(PDO::FETCH_ASSOC)) { ?> não consigo encontrar o erro.
    • Por Alex Dias
      <?php //CONECTA COM O BANCO DE DADOS require_once("adm/conecta.php"); //SQL $sql = "SELECT DISTINCT tb_comentarios.ID_COMENTARIOS, tb_comentarios.DATA_COMENTARIOS, tb_comentarios.NOME_COMENTARIOS, tb_comentarios.COMENTARIOS, tb_respostas.ID_RESPOSTAS, tb_respostas.DATA_RESPOSTAS, tb_respostas.NOME_RESPOSTAS, tb_respostas.RESPOSTAS FROM tb_comentarios, tb_respostas WHERE tb_comentarios.ID_COMENTARIOS = tb_respostas.ID_COMENTARIOS ORDER BY DATA_COMENTARIOS DESC"; $resultado = mysql_query($sql) or die ("Não foi possível realizar a consulta ao banco de dados"); // CHAMA OS DADOS DA TABELA while ($linha=mysql_fetch_array($resultado)) { $id_comentarios = $linha["ID_COMENTARIOS"]; $data_comentarios = $linha["DATA_COMENTARIOS"]; $nome_comentarios = $linha["NOME_COMENTARIOS"]; $email_comentarios = $linha["EMAIL_COMENTARIOS"]; $comentarios = $linha["COMENTARIOS"]; $status = $linha["STATUS"]; $id_artigo = $linha["ID_ARTIGO"]; $id_respostas = $linha["ID_RESPOSTAS"]; $data_respostas = $linha["DATA_RESPOSTAS"]; $nome_respostas = $linha["NOME_RESPOSTAS"]; $email_respostas = $linha["EMAIL_RESPOSTAS"]; $respostas = $linha["RESPOSTAS"]; $status = $linha["STATUS"]; $id_artigo = $linha["ID_ARTIGO"]; $id_comentarios = $linha["ID_COMENTARIOS"]; $data_portugues1= implode("/", array_reverse(explode("-", "$data_comentarios"))); $data_portugues2= implode("/", array_reverse(explode("-", "$data_respostas"))); echo" <table width='1200' align='center' border='0' cellspacing='0' cellpadding='0'> <tr> <td width='100' valign='top'><img src='images/usuario.jpg'></td> <td width='900' valign='top'><p align='left'><font size='3'><strong>$nome_comentarios</strong> dia $data_portugues1</font></p><br><p align='justify'><font size='3'>$comentarios</font><p></td> <td width='200' align='center' valign='middle'><a href='#'><img src='images/responder.jpg' bordeer='0'></a></td> </tr> </table> "; echo"<br><br> <table width='1200' align='center' border='0' cellspacing='0' cellpadding='0'> <tr> <td width='100' valign='top'>&nbsp;</td> <td width='100' valign='top'><img src='images/usuario2.jpg'></td> <td width='800' valign='top'><p align='left'><font size='3'><strong>$nome_respostas</strong> dia $data_portugues2</font></p><br><p align='justify'><font size='3'>$respostas</font><p></td> <td width='200' align='center' valign='middle'><a href='#'><img src='images/responder.jpg' bordeer='0'></a></td> </tr> </table> <br><br><br><br>"; }//FECHA FOR ?> Boa tarde amigos, estou batendo cabeça aqui com meu Blog, meu Blog tem duas tabelas MySQL uma chamada tb_comentarios para armazenasr os comentários dos artigos postados, a outra tabela é chamada de tb_respostas para armazenar as respostas desses comentários dos usuários. Está tudo ok imprimindo os comentários e respostas na tela bem legal, o único problema é que os comentários estão duplicando, as respostas estão ok, mas os comentários estão duplicando.
       
      O Correto seria o comentário ficar lá e as respostas todas em baixo desse comentário, a questão é que cada resposta dada acaba repetido o comentário, então fica sempre o comentário e a resposta um abaixo do outro, e se tiver três respostas desse comentário, a dupla comentário x resposta se repete por três vezes sendo que o ideal seria só um comentário e as três respostas em baixo, e não consigo determinar que o comentário não se repita, ja usei DISTINCT mas não resolve.

      Segue abaixo o código e anexo o PRINT da tela para vocês entenderem o que tá acontecendo.


       

    • Por jaquelss
      Os erros estão na imagem anexada. Não sei exatamente o que colocar quanto o conteúdo no menu, mas quanto ao botão segue abaixo:
       
      <div class="col-md-2 col-sm-6 col-6">
      <button class="button button-rounded btn-block nomargin"
      style="margin-top: 29px !important;"><a href="http://localhost/xavier/#/imovel"></style>Encontrar</a></button>
      </div>
       
      Tenho certeza que é uma bobagem minha, mas perdi a tarde tentando resolver.
      Ainda sou estudante, não tenho conhecimento total quanto a isso (apesar de que acho que ninguém tem né kk).
      Enfim,
      Agradeço desde já.

    • Por clickanapolis
      Bom dia pessoal, preciso criar uma query onde eu vou pegar a lista de fornecedores e contas a pagar mais ou menos assim:
       
      select * from clientes a, cp b where a.id_cliente = b.id_cliente o problema é que o cliente quer que order by seja por quem ele mais deve para o que menos deve.
       
      O problema que temos 5 status de pagamento no contas a pagar.
       
      E o meu sum deve fazer a soma para ordenação apenas em 3, como eu faria para minha query ordenar fazendo a soma nos status 1, 2 e 3?
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.