Ir ao conteúdo

Como adicionar tag <a> a dados do SQL


Henrique Valença

Posts recomendados

Postado

Bom dia,

estou tentando criar um quadro de avisos que funcione parecendo o hotmail, ex:

tem uma tabela SQL com o assunto e a mensagem

por php eu crio uma tabela só com os assuntos e quero colocar uma tag

<a href> pra fazrer um link com outra página que exiba só a mensagem que tem aquele assunto.

eu já consegui fazer a tabela por php e fazer exibir os dados mas não consigo colocar a tag <a>

Segue código:

<?php

$link = mysql_connect('localhost','dosgrafi_dosgraf','henrique');

$conexao = mysql_select_db('dosgrafi_henrique',$link); if($conexao){

$sql = "SELECT titulo FROM avisos";

$consulta = mysql_query($sql);

echo '<table width="490" border="1" bordercolor="#000000">';

echo '<tr>';

echo '<td width="350" scope="col"><div align="center"><b>ASSUNTO<b/></div></td>';

echo '</tr>';

while ($registro = mysql_fetch_assoc($consulta)){

echo '<tr>';

echo '<td>'.$registro["titulo"].'</td>';


echo '</tr>';

}

echo '</table>';

}

?>

a tag que quero colocar é essa: <a href="/avisos.php?titulo=<?= $avisos['titulo'] ?>">

desde já agradeço

Henrique Valença

Postado
... <a href="/avisos.php?titulo=<?= $avisos['titulo'] ?>">

Já tentou colocar \ antes da aspas simples? ... acho que o problema é esse ... tente adicionar o HREF assim:

<a href="/avisos.php?titulo=<?= $avisos[\'titulo\'] ?>">

Abraços

Postado
O problema maior é onde eu vou colocar essa tag, pois onde quer que eu coloque dá algum tipo de erro, o mais comum é de sintaxe.

Então ... o erro de sintaxe está associado a questão das aspas ... a combinação delas (duplas e simples) está deixando a instrução "aberta" ... por isso te sugeri a utilização de \ antes ...

Quanto a onde colocar, só pode ser aqui ...

while ($registro = mysql_fetch_assoc($consulta)){

echo '<tr>';

echo '<td>'.$registro["titulo"].'</td>';

echo '</tr>';

}

... dentro do <td> da tabela ...

Tem mais ... agora que prestei atenção no seu <a href> ... você não precisa colocar de novo a tag <? para referenciar um variável php dentro de uma instrução ... isso pode estar provocando o erro tb .. o correto seria escrever:

<a href="/avisos.php?titulo=$avisos[\'titulo\']">

ou talvez assim tb funcione:

... <a href="/avisos.php?titulo=' . $avisos[\'titulo\'] . '"> ... com o ponto concatenando as expressões ...

  • Moderador
Postado

Faça assim:


<?php
echo "<table width='490' border='1' bordercolor='#000000'>
<tr>
<td width='350' scope='col'><div align='center'><b>ASSUNTO<b/></div></td>
</tr>";

while ($registro = mysql_fetch_object($consulta)){

echo "
<tr>
<td><a href='avisos.php?titulo=$registro->titulo'>$registro->titulo/a></td>
</tr>";

}

echo "</table>";

é melhor usar o fetch_object para tratar o dado como objeto..

agrupar os echos..

e outra dica.. retire os estilos inline.. e aplique no css.

Postado

já resolvi de outra maneira.

coloquei um campo a mais

<table width="490" height="60" border="1" cellspacing="2" bordercolor="#000000">
<thead>
<tr>
<th width="401"><div align="center">Título</div></th>
<th width="95"><div align="center">Ler Aviso</div></th>
</tr>
</thead>
<tbody>
<? foreach ($avisos as $aviso): ?>
<tr>
<td><?= $aviso['titulo'] ?>
<div align="center"></div>
<div align="center"></div>
<div align="center"></div></td>
<td><div align="center"><a href="/avisos.php?id=<?= $aviso['id'] ?>">Ler</a></div></td>
<? endforeach ?>
</tbody>
</table>

antes disso lá no inicio do codigo eu fiz assim:

<php?
$pagina_avisos = (int) (get('pagina_avisos')) ? get('pagina_avisos') : 1;
$inicio_avisos = ($pagina_avisos * 100) - 100;
$avisos = db::find('all', sprintf("SELECT * FROM avisos LIMIT %u, 100", $inicio_avisos));
$total_avisos = db::find('count', "SELECT 0 FROM avisos");
$total_paginas_a = ceil($total_avisos/100);
?>

aí deu certo.

mas obrigado mesmo assim.

  • Moderador
Postado

Caso o autor do tópico necessite, o mesmo será reaberto, para isso deverá entrar em contato com a moderação solicitando o desbloqueio.

Arquivado

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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!