Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
E ai pessoal, beleza?
Não lembro se cheguei postar aqui que estou fazendo um forum, o objetivo é exclusivamente apenas pra aprender coisas mais complicadas (estou estudando PHP), não quero reinventar a roda novamente hehehe
Mais então, voltando o assunto, estou com mais uma dúvida, agora em relação como deixar um tópico fixo, assim como nos fóruns phpBB, Invision e afins da vida.
Fiz um campo STATUS na tabela, onde por default o valor é sempre 0, mas quando quero que o tópico fique fixo, eu coloco o ID do topico nesse campo STATUS.
Tentei fazer a verificação assim, mas ele está escondendo o tópico que deveria ficar FIXO, se é mesmo que estou fazendo a verificação correta.
<?php// Aqui tentei fazer a verificação// de topico fixo e não deu certoif( $topico == $status){echo "FIXO: <b><a href=\"topico.php?=$topico\">$titulo</a></b>";}else {echo "<a href=\"topico.php?=$topico\">$titulo</a><br>";}?>
Vou postar também o código inteiro da página, talvez eu esteja fazendo algo de errado em outra parte do código. Não repare em tantos abre e fecha o código, é que aqui eu tirei os HTML da página pra um melhor entendimento do código.
<?php// Conecta com o BDinclude "../config.php";global $connection;// Total de registros$sql=mysql_query("SELECT * FROM forum "); $total=mysql_num_rows($sql); // Declaração da pagina inicial if($pagina=="") { $pagina="1"; } // Maximo de registros por pagina $maximo="20"; // Calculando o registro inicial $inicio=$pagina-1; $inicio=$maximo*$inicio; // Query no qual o script se basea// para mostrar os topicos $query=mysql_query("SELECT *, DATE_FORMAT(pdate, '%d/%m/%Y') as date FROM forum WHERE pai = 0 AND status = '$status' ORDER BY pdate DESC LIMIT $inicio,$maximo"); ?><?php// Mostra os dados na pagina while($row = mysql_fetch_array($query)) { $id = $row['id'];$autor = $row['autor'];$titulo = $row['titulo'];$topico = $row['topico'];$status = $row['status'];$data = $row['date'];?> <?php// Conta quantos topicos existe$somando = "SELECT * FROM forum WHERE topico = '$topico'";$danilo = mysql_num_rows(mysql_query($somando));?><?php// Aqui tentei fazer a verificação// de topico fixo e não deu certo if( $topico == $status){ echo "FIXO: <b><a href=\"topico.php?=$topico\">$titulo</a></b>";}else {echo "<a href=\"topico.php?=$topico\">$titulo</a><br>";}?><?} ?> <?php// Calculando pagina anterior $menos=$pagina-1; // Calculando pagina posterior $mais=$pagina+1; // Calculos para a mostragem de paginas$p_ini=$mais-1; $p_ini=$maximo*$p_ini; // Querys para a mostragem de paginas $p_query=mysql_query("SELECT * FROM forum LIMIT $p_ini,$maximo"); $p_total=mysql_num_rows($p_query); // Mostragem de pagina if($menos>0) { echo "<a href=\"?pagina=$menos\">:: anterior</a> "; } if(mysql_num_rows($p_query)>0) { echo " <a href=\"?pagina=$mais\"> proxima ::</a>"; }?><br> <form style="margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;"><?php// Listando as paginas $i=1; $pgs=$total/$maximo; $formatado=number_format($pgs); if($formatado<$pgs) { $formatado=$formatado+1; }?><table border="0" width="590" align="center"><tr><td width="70%">Temos <b><?php echo $danilo; ?></b> Tópicos e <b><?php echo $total; ?></b> Mensagens no Fórum.</td><td width="30%" align="right">Página <select name="selector" onChange="eval(this.options[this.selectedIndex].value)" size="1"><?while($i<=$formatado) { echo "<option value=\"parent.location.href='?pagina=$i';\">$i</option> \n"; $i++; } ?> </select> de <b><?php echo $formatado; ?></b> Páginas</td></form></tr></table>
Pra quem quiser ver como tá o funcionamento do script, pode CLICAR AQUI e ver.
Login: teste
Senha: teste
Espero que vocês mais uma vez me ajudem identificar esse erro. :D
Carregando comentários...