Eu preciso montar uma tela onde seja exibido uma lista de publicações ordendas a critério do usuário, por exemplo: Categorias (LIVROS, PERIÓDICOS e CAPÍTULOS DE LIVROS), o usuário irá ordenar conforme sua necessidade. 1º PERIÓDICOS, 2º LIVROS, etc....
Eu preciso que a tabela que contenha as publicações sejam listadas abaixo de cada categoria, sendo ordenadas pela maior data de cada publucação por Categoria.
Então pensei em fazer um laço para ler a ordem das categorias e montar na tela e abaixo de cada categoria virá as publicações de cada categoria ordenadas como falei acima.
O problema é que no meu laço, isso só está sendo feito uma única veze não repete para as demais categorias, que são exibidas na tela vazias.
Quando eu mudo a ordenação das categorias o mesmo ocorre.
nesse caso as categorias PERIÓDICOS e CAPÍTULOS DE LIVROS, não recebem os dados de suas publicações.
O código do laço é esse:
<?php
/* vai receber o titulo de cada categoria para fazer a SELECT*/global $utf_tit_categ;
$ordenacao ="SELECT titulo_categoria FROM tblcatpesquisa ORDER BY posicao";
$relaciona = mysqli_query($conecta, $ordenacao);/* tem a variável $rowcount que recebe o total de registros da tabela de CATEGORIAS */for($a=0; $a <= $rowcount; $a++){
$ordem = mysqli_fetch_assoc($relaciona);
$utf_tit_categ = utf8_encode($ordem['titulo_categoria']);/*a Global vai receber o nome da categoria formatado em UTF8*//* aqui é montado a exibição do título de cada uma das CATEGORIAS contadas por $rowcount */
echo "<div class='container bg-primary'><span class='font-weight-light text-white'>{$utf_tit_categ}</span></div>";/* faço um Query para relacionar todas as publicações referentes a CATEGORIA do primeiro loop de FOR*/
$seleciona_itens ="SELECT datapublicacao, titulo, linkexterno FROM publicacoes WHERE categoria='$utf_tit_categ' ORDER BY datapublicacao DESC";
$executa_busca = mysqli_query($conecta, $seleciona_itens);while($item = mysqli_fetch_assoc($executa_busca)){
$utf_tit_pesq = utf8_encode($item['titulo']);
echo "<div id='fundo'><span class='mx-3'>{$item['datapublicacao']} - {$utf_tit_pesq} - {$item['linkexterno']}</span></div>";}
mysqli_free_result($executa_busca);/*Libero a Query para uma nova consulta*//* o laço deve voltar daqui até que $rowcount seja atingido */}
mysqli_free_result($relaciona);?>
Não sei o que estou fazendo errado, ou então o que eu deixei de fazer.
Alguém poderia me auxiliar para resolver esse problema?
Pergunta
fspjonny
Olá!
Eu preciso montar uma tela onde seja exibido uma lista de publicações ordendas a critério do usuário, por exemplo: Categorias (LIVROS, PERIÓDICOS e CAPÍTULOS DE LIVROS), o usuário irá ordenar conforme sua necessidade. 1º PERIÓDICOS, 2º LIVROS, etc....
Eu preciso que a tabela que contenha as publicações sejam listadas abaixo de cada categoria, sendo ordenadas pela maior data de cada publucação por Categoria.
Então pensei em fazer um laço para ler a ordem das categorias e montar na tela e abaixo de cada categoria virá as publicações de cada categoria ordenadas como falei acima.
O problema é que no meu laço, isso só está sendo feito uma única veze não repete para as demais categorias, que são exibidas na tela vazias.
Quando eu mudo a ordenação das categorias o mesmo ocorre.
nesse caso as categorias PERIÓDICOS e CAPÍTULOS DE LIVROS, não recebem os dados de suas publicações.
O código do laço é esse:
Não sei o que estou fazendo errado, ou então o que eu deixei de fazer.
Alguém poderia me auxiliar para resolver esse problema?
Grato!.
Link para o comentário
Compartilhar em outros sites
0 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.