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

Exibir dados de um recordset somente 1 vez


©JOÃO GABRIEL MARQUES

Pergunta

Olá a todos!

Estou com uma dúvida: fiz um recordset que seleciona as últimas notícias inseridas no banco de dados (MySQL) e do lado de cada título da notícia eu inseri a hora. Até aí tudo ok. Mas eu queria dividir a exibição dessas notícias por data, para que a hora não seja confundida de um dia para o outro. Preciso fazer mais ou menos o seguinte:

10/02/2007

11:00h Título da notícia

11:00h Título da notícia

11:00h Título da notícia

11:00h Título da notícia

11/02/2007

11:00h Título da notícia

11:00h Título da notícia

11:00h Título da notícia

11:00h Título da notícia

Mas se eu inserir uma região repetida na tabela que exibe os registros, a data iria aparecer em todas as linhas, e isso não pode acontecer, ou seja, se houver mais de 1 notícia de uma determinada data, essa data só deve aparecer 1 vez.

Como faço isso?

Obrigado!

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Você pode fazer assim...duas query's ..uma você vai puxar as notícias pela data e fará o laço ..e dentro desse laço você faz outra query dessa vez comparando as datas ... tendeu ?

Até fazer 2 querys eu entendi, mas quanto à comparação, não sei como fazer. Poderia me dar um exemplo?

Link para o comentário
Compartilhar em outros sites

  • 0

Nem precisaria de duas querys... basta utilizar uma lógica em que você tenha um variável que contenha a data que foi impressa e a que está na volta do laço, se for igual, imprime, caso contrário não faz nada...

$sql  = //...

while($x = mysql_fetch_assoc($sql)){
//Primeiro resgato a data
$data = $x['data'];

/*
Se for a primeira volta do laço então $data_atual não vai existir, crio ela e mando imprimir a data
*/
if(isset($data_atual)){
$data_atual = $x['data'];
echo $x['data'].'<BR>';
}
/*
Aqui eu verifico se a data da volta é diferente da data_atual, se for é porque é uma data nova e tem que ser impressa, mando imprimir e troco o valor de data_atual
*/
if ($data != $data_atual){
$data_atual = $x['data'];
echo $x['data'].'<BR>';
}

//Mando imprimir a noticia
echo $x['noticia'].'<BR>';
}

Link para o comentário
Compartilhar em outros sites

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...