Jump to content


Photo

Clicar Num Campo Da Tabela?


  • Faça o login para participar
5 replies to this topic

#1 Nimaro

Nimaro

    Normal

  • Usuários
  • 71 posts
  • Sexo:Não informado

Posted 25/11/2009, 08:45

Bons dias!
Tenho uma tabela de mensagens que é criada dinamicamente, com base em dados que contenho na minha Base de Dados.
Eu agora pretendia que ao clicar em uma determinada mensagem da tabela, ele abrisse essa mesma mensagem para poder visualizar o seu conteudo.
Se quiserem posso colocar o codigo da criação da tabela...
Agradecia uma ajuda vossa.

#2 Willian Gustavo Veiga

Willian Gustavo Veiga

    12 Horas

  • Usuários
  • 175 posts
  • Sexo:Masculino

Posted 25/11/2009, 08:58

Bom dia, tudo bem?

Sempre que possível, poste o código. Fica mais fácil ajudar. Outra coisa, detalhe melhor o seu problema.

Cada mensagem da tabela é uma linha (tupla) na sua tabela do banco de dados? Você quer abrir a mensagem em uma nova página?

Se for isso, faça o seguinte:

- Na página onde são listadas as mensagens, adicione um link na mensagem, passando o id. Por exemplo: <a href="mensagem.php?id=[id-da-mensagem]>Mensagem que vem do banco</a>".

- Na página mensagem.php pegue o id passado ($_GET['id']) e selecione (SELECT) baseando-se neste. Exiba a mensagem que veio do banco.

Seria basicamente isso. Se não for isso que você quer, por favor, poste novamente.

Um abraço, tudo de bom.
Posted Image

#3 Nimaro

Nimaro

    Normal

  • Usuários
  • 71 posts
  • Sexo:Não informado

Posted 25/11/2009, 09:32

Sim cada mensagem da minha tabela representa 1 linha, e sim quando clicado gostava que abrisse uma nova janela com a respectiva mensagem...
O codigo que tenho para criar a tabela é o seguinte----->
<!----------------PESQUISA POR Medico---------->
 <?php
 if(isset($_POST['submit']))
 {
     $id_medico = strip_tags($_POST['id_medico']);
     $exc = "SHOW TABLES"; /*VARIÁVEL RENOMEADA*/
     $query = mysql_query("SELECT * FROM mensagens WHERE id_medico = '".mysql_real_escape_string($id_medico)."'");
 ?>
 <div id="topic">
     <b>Tabelas da base de dados</b>
 </div>
 <table id="content" border="2" bordercolor="#00CC00">
 <tr>
    <th>id_utilizador</th>
    <th>mensagem</th>
    <th>data</th>
    <th>hora</th>
 </tr>
 <?php
     while($dados = mysql_fetch_array($query)){
 ?>
     <tr>
      <td>  <?php echo $dados[2]; ?></td>
      <td>| <?php echo $dados[3]; ?></td>
      <td>| <?php echo $dados[4]; ?></td>
      <td>| <?php echo $dados[5]; ?></td>
     </tr>
 <?php } ?>
 </table>
 <?php
 } else $nome = '';
 ?>

Bem... eu percebi +- o que querias dizer para fazer, mas não sei muito bem como adiciono um link a cada linha :/
Espero que me consigas dar mais 1 luz agora que coloquei aqui o codigo ^^
Agradeco a ajuda

#4 Paulo André

Paulo André

    Why so serious?

  • Ex-Admins
  • 5114 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG
  • Interesses:O.Q.F.J.?

Posted 25/11/2009, 09:44

Nimaro, para manter organizado o código, tente colocá-lo entre as tags code. (ok2)

E se eu entendi bem sua dúvida, para colocar um link é só inserir a tag HTML para o link, informando a página que será aberta passando a referência:

<?php
     while($dados = mysql_fetch_array($query)){
?>
     <tr>
      <td><a href="pagina.php?id=<?php echo $dados['id']; ?>" target="_blank"><?php echo $dados[2]; ?></a></td>
      <td>| <?php echo $dados[3]; ?></td>
      <td>| <?php echo $dados[4]; ?></td>
      <td>| <?php echo $dados[5]; ?></td>
     </tr>
<?php } ?>

Algo parecido com isto.

[]'s (y)Até mais
Paulo André G Rodrigues,
ex-administrador Fórum WMO.


www.CanalDev.com.br

#5 Nimaro

Nimaro

    Normal

  • Usuários
  • 71 posts
  • Sexo:Não informado

Posted 27/11/2009, 09:40

Foi mesmo isso que estava a pedir Paulo André.
Mas estive a ver melhor e preferia que ao clicar no campo da tabela abrisse a mensagem de lado. Penso que devo de executar uma script que me abra a mensagem lateralmente.
Gostava de saber a vossa opiniao sobre a melhor maneira de fazer isto.

#6 Paulo André

Paulo André

    Why so serious?

  • Ex-Admins
  • 5114 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG
  • Interesses:O.Q.F.J.?

Posted 27/11/2009, 10:12

No caso então a melhor opção para fazer isto é utilizar javascript.

Observe o exemplo abaixo e tente implementá-lo no seu código.

O HTML:
<a href="#" onclick="abre_mensagem(1);">Abrir</a>
<div class="box_msg" id="mensagem_1">Esta é uma mensagem oculta.</div>

CSS:
div.box_msg {
	display: none;
}

Javascript:
function abre_mensagem(id_msg) {
	document.getElementById('mensagem_' + id_msg).style.display = 'block';
	return false;
}

O resultado fica assim.

Qualquer coisa é só clicar com o botão direito e exibir o código. ;)

[]'sAté mais
Paulo André G Rodrigues,
ex-administrador Fórum WMO.


www.CanalDev.com.br




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq