Ir para conteúdo
Fórum Script Brasil
  • 0

Exibir lista de dados relacionados com registro de outra tabela


Fabio Rizzi

Pergunta

Tenho duas tabelas relacionadas em que cada pessoa pode ter 1 ou mais telefones.

Como faço pra exibir todos os telefones para cada pessoa?

Da forma como fiz mostra o nome repetido para cada telefone.

Está exibindo assim:

Nome | Telefones

fulano | 12345

fulano | 54321

Só que eu quero exibir o nome da pessoa e a lista de telefones da pessoa, assim:

Nome | Telefones

fulano | 12345

54321

Como faço isso?

Se alguém puder me ajudar ficarei grato.

CREATE TABLE IF NOT EXISTS `pessoa` (

  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,

  `nome` varchar(50) DEFAULT NULL,

  `email` varchar(50) DEFAULT NULL,

  `cpf` varchar(20) DEFAULT NULL,

  PRIMARY KEY (`id`),

) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=24;

 

 

CREATE TABLE IF NOT EXISTS `telefone` (

  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,

  `numero` varchar(14) DEFAULT NULL,

  `id_pessoa` int(11) unsigned DEFAULT NULL,

  PRIMARY KEY (`id`),

  KEY `telefone_pessoa` (`id_pessoa`)

) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=19 ;
<?php
$statement = $pdo->prepare("SELECT telefone.numero, pessoa.* FROM telefone INNER JOIN pessoa ON (pessoa.id = telefone.id_pessoa);");

$statement->execute();

 

$usuarios = $statement->fetchAll(PDO::FETCH_OBJ);

 

 ?>



<table class="table table-bordered table-striped">

    <thead>

        <tr>

            <th>Nome</th>

            <th>Telefone</th>

        </tr>

    </thead>

    <tbody>

        <?php foreach ($usuarios as $usuario): ?>

            <tr>

                <td><?php echo $usuario->nome; ?></td>

                <td><?php echo $usuario->numero; ?></td>

            </tr>

        <?php endforeach; ?>

    </tbody>

</table>
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...