- As informações estão sendo gravadas corretamente no banco de dados. Inclusive a imagem. O script tem duas partes: inserção e imagem (joga a imagem para uma pasta e grava seu caminho para ser chamado mais na frente).
- Lista dos posts no painel está funcionando normalmente. Porém, não consigo chamar a categoria que está em outra tabela: Na tabela post contém "cat_id" e na tabela categoria também tem um "cat_id". Não sei como chamar o nome da categoria que está na tabela categoria. Ex: Na tabela post uma publicação escolheu a categoria Lentes e ela corresponde ao número 1 (id=2 na tabela post e na tabela categoria).
- Os posts foram listados na página inicial e na página blog (com paginação funcionando perfeitamente).
O grande problema:
- Quando clico, por exemplo, na notícia que tem id=4 sou direcionado para a single-post (página com a notícia completa). Sendo isso não acontece. Sou direcionado sempre para a última notícia cadastrada. Isso acontece em todas páginas que listam as notícias. No painel, na página inicial e na própria página de blog. Também, quando clico na notícia diretamente que é listada na página Blog.
Ex:
- Notícia 01 tem id=4
- Notícia 02 tem id=5
Elas estão listadas na página inicial, quando clico na notícia 01 (http://localhost/cftv/single-post.php?id=4) sou direcionado para a notícia 02. Na verdade, isso acontece se eu clicar em qualquer notícia. Aparece o link com o id correto no navegador. Mas, a notícia é sempre a última cadastrada.
Ex:
Código da página Blog, onde as notícias são listadas:
<?php
$sql = "select * from post p, categoria c where p.cat_id = c.cat_id ORDER BY post_id DESC LIMIT $inicio,$lpp";
$qry = @mysqli_query($conexao, $sql);
while ($linha = @mysqli_fetch_array($qry)) {
$sql = "select * from post p, categoria c where p.cat_id = c.cat_id ORDER BY post_id DESC";
$qry = @mysqli_query($conexao, $sql);
$linha = @mysqli_fetch_array($qry);
Pergunta
jamiel
Projeto:
Um website com painel administrativo
O foi feito até agora no painel:
- As informações estão sendo gravadas corretamente no banco de dados. Inclusive a imagem. O script tem duas partes: inserção e imagem (joga a imagem para uma pasta e grava seu caminho para ser chamado mais na frente).
- Lista dos posts no painel está funcionando normalmente. Porém, não consigo chamar a categoria que está em outra tabela: Na tabela post contém "cat_id" e na tabela categoria também tem um "cat_id". Não sei como chamar o nome da categoria que está na tabela categoria. Ex: Na tabela post uma publicação escolheu a categoria Lentes e ela corresponde ao número 1 (id=2 na tabela post e na tabela categoria).
- Os posts foram listados na página inicial e na página blog (com paginação funcionando perfeitamente).
O grande problema:
- Quando clico, por exemplo, na notícia que tem id=4 sou direcionado para a single-post (página com a notícia completa). Sendo isso não acontece. Sou direcionado sempre para a última notícia cadastrada. Isso acontece em todas páginas que listam as notícias. No painel, na página inicial e na própria página de blog. Também, quando clico na notícia diretamente que é listada na página Blog.
Ex:
- Notícia 01 tem id=4
- Notícia 02 tem id=5
Elas estão listadas na página inicial, quando clico na notícia 01 (http://localhost/cftv/single-post.php?id=4) sou direcionado para a notícia 02. Na verdade, isso acontece se eu clicar em qualquer notícia. Aparece o link com o id correto no navegador. Mas, a notícia é sempre a última cadastrada.
Ex:
Código da página Blog, onde as notícias são listadas:
<?php
$sql = "select * from post p, categoria c where p.cat_id = c.cat_id ORDER BY post_id DESC LIMIT $inicio,$lpp";
$qry = @mysqli_query($conexao, $sql);
while ($linha = @mysqli_fetch_array($qry)) {
?>
<a href="single-post.php?id=<?php echo $linha["post_id"] ?>"><h2><?php echo $linha["post_title"] ?></h2></a>
<br>
<img src='<?php echo $linha["post_img"];?>' class="img-responsive" style="height: 200px;" >
<br>
<p>
<?php $text = $linha["post_msg"]; echo substr($text, 0, 300) . '...'; ?>
</p>
<p>
<span class="fa fa-clock-o" style="color: #0098da;"></span><strong> <?php echo $linha["post_data"] ?></strong> <br>
<span class="fa fa-file-text-o" style="color: #0098da;"></span><strong> <?php echo $linha["post_tags"] ?></strong> <br>
<span class="fa fa-list-ul" style="color: #0098da;"></span><strong> <?php echo $linha["cat_nome"] ?></strong>
</p>
<p><a href="single-post.php?id=<?php echo $linha["post_id"] ?>" class="btn btn-default default-custom">LER MAIS</a></p>
<br>
<?php } ?>
<?php echo $paginacao; ?>
Código da página single-post:
<div class="container-fluid" style="background: rgba(0, 0, 0, 0.5); min-height: 150px;">
<div class="container">
<div class="row">
<div class="col-md-12">
<?php
$sql = "select * from post p, categoria c where p.cat_id = c.cat_id ORDER BY post_id DESC";
$qry = @mysqli_query($conexao, $sql);
$linha = @mysqli_fetch_array($qry);
?>
<h2 style="color: #0098da; text-align: center;"><?php echo $linha["post_title"] ?></h2>
</div>
</div>
</div>
</div>
<div class="container-fluid single-post-row2">
<div class="container">
<div class="row">
<div class="col-md-8 single-post-colleft">
<h2 style="color: #0098da;"><?php echo $linha["post_title"] ?></h2>
<img src='<?php echo $linha["post_img"];?>' class="img-responsive" style="width: 100%;" >
<br>
<span style="color: #f8f8f8;"><?php echo $linha["post_msg"] ?></span>
<p>
<span class="fa fa-clock-o" style="color: #0098da;"></span><strong> <span style="color: #f8f8f8;"><?php echo $linha["post_data"] ?></span></strong>
<br>
<span class="fa fa-file-text-o" style="color: #0098da;"></span><strong><span style="color: #f8f8f8;"> <?php echo $linha["post_tags"] ?></span></strong>
<br>
<span class="fa fa-list-ul" style="color: #0098da;"></span><strong><span style="color: #f8f8f8;"> <?php echo $linha["cat_nome"] ?></span></strong>
</p>
<br>
<div class="fb-comments" data-href="https://facebook.com/infrainfo" data-numposts="5"></div>
</div>
Agradeço desde já qualquer ajuda.
Link para o comentário
Compartilhar em outros sites
6 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.