Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

JangoPI

Exibir Apenas Dados De Uma Categoria

Recommended Posts


Boa tarde pessoal, gostaria de uma dica para exibir apenas dados de uma categoria e por data, no caso as categorias são 8 e 38, quero exibir apenas a da categoria 8
o coluna da tabela é idcat, sou novo nisso já fiz alguns ajustes pra exibir mais não consegui.

Codigo da página para exibir os dados do banco de dados:

<?
$pg=$_GET[pg];
$page=$_GET

;

$busca = "SELECT * FROM noticias_dados order by data desc";

$palavra = "Notícia(s)";

$total_reg = "6";
$idcat = "8";
if(!$page){
$page = "1";
}

$inicio = $page-1;
$inicio = $inicio*$total_reg;

$limite = mysql_query("$busca LIMIT $inicio,$total_reg");
$todos = mysql_query("$busca,$idcat");

$tr = mysql_num_rows($todos);
$tp = ceil($tr / $total_reg);

if(mysql_num_rows($todos)>0){
?>
<br>

<table width="98%" align="center" cellpadding="0" cellspacing="0">


<tr><td height="3" colspan="2"></td></tr>
<tr><td height="1" colspan="2" background="images/layout/barrinha_divisao_horizontal.gif"></td></tr>
<tr><td height="3" colspan="2"></td></tr>

<? while ($dados=mysql_fetch_array($limite)) {
?>
<TR>
    <TD align='left' valign="middle">• <a href=?pg=noticia&id=<? echo $dados[id]?>>       <? $data = explode("-",$dados[data]); echo "[$data[2]/$data[1]/$data[0]] - <strong>$dados[titulo]</strong>";?>
    </a></span></Td>
</TR>
<tr><td height="3" colspan="2"></td></tr>
<tr><td height="1" colspan="2" background="images/layout/barrinha_divisao_horizontal.gif"></td></tr>
<tr><td height="3" colspan="2"></td></tr>
<? }?>
</table>


<? } else {?>
<BR>
  <table width="98%" align="center" cellpadding="0" cellspacing="0">
  <TR>
    <TD align="center" valign="bottom">       <br>
      <br>
      <br>
      <br>
      Nenhuma <b><? echo $palavra?></b> encontrada em <br>
      nosso banco de dados!<br>
      <br>
      <br>    </td>
  </tr>
</table>
<? } ?>
<br>


 


Obrigado pela paciência!

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok consegui, vlw amigo, agora gostaria de que um item dessa tabela permanecesse sempre em primeiro independente de outras entradas futuras, tem alguma ideia de como fazer isso?

 

Obrigado pela ajuda

Compartilhar este post


Link para o post
Compartilhar em outros sites

o codigo ta assim agora

 

<table width="580" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td class="titulo"><ul>
      <li class="li2">Agenda</li>
    </ul></td>
  </tr>
  <tr>
    <td width="507" valign="top">
    
    <table width="580" border="0" align="left" cellpadding="0" cellspacing="0" class="txtbox">
      <tr align="left">
        <td valign="top" class="txt"><?
$sql = mysql_query("SELECT * FROM noticias_dados where idcat='8' order by data desc LIMIT 5");
$sql2 = mysql_query("SELECT * FROM noticias_dados where destaque='sim' order by data desc LIMIT 5");
$total = mysql_num_rows($sql); 

if ($total==0) { echo "<br><center>Nenhum registro encontrado!</center>";} 
else if ($total>0) { 
$x=0; 
?><br>

<table width="507" border=0 cellpadding=2 cellspacing=0> 
<? while ($dados=mysql_fetch_array($sql)) {?>

<?
$contatamanho = strlen($dados[texto]);
if(empty($quantidade)){
$quantidade = 200;
}
$quantidade = 200;
if($contatamanho > $quantidade){
$dados[texto] = substr_replace($dados[texto], "...", $quantidade, $contatamanho - $quantidade);
} else {
$dados[texto] = "$dados[texto]";
}
$contatamanho = strlen($dados[titulo]);
if(empty($quantidade)){
$quantidade = 45;
}
$quantidade = 45;
if($contatamanho > $quantidade){
$titulo = substr_replace($dados[titulo], "...", $quantidade, $contatamanho - $quantidade);
} else {
$titulo = "$dados[titulo]";
}

$data = explode("-", $dados[data]);
$data = "$data[2]/$data[1]/$data[0]"; ?>

<tr>
<td class="espa"><? $dados2=mysql_fetch_array(mysql_query("SELECT * FROM noticias_categorias where id='$dados[idcat]'"));

if($dados[foto01] != "") {
$data = explode("-",$dados[data]); echo "<font class='linknoticia' style='text-transform:uppercase;'>[$data[2]/$data[1]/$data[0]]</font>";
echo "<a class='linknoticia' href='?pg=noticia&id=$dados[id]'><img style='border:1px solid #999999;' align=left src='thumbs.php?w=$largura&h=$altura&imagem=images/noticias/$dados[id]/$dados[foto01]' border='$dados[borda]' hspace='5' title='$dados[subtitulo]'></a>
<a class='linknoticia' style='text-transform:uppercase;' href='?pg=noticia&id=$dados[id]'> $titulo</a><br /><br />
<a class='linknoticia2' href='?pg=noticia&id=$dados[id]'>$dados[texto]</a> <font class='postagemautor'>(v. $dados[cont])</font>";
} else{
$data = explode("-",$dados[data]); echo "<font class='linknoticia'> <style='text-transform:uppercase;'>[$data[2]/$data[1]/$data[0]]</font>";
echo "<a class='linknoticia' href='?pg=noticia&id=$dados[id]'></a>
<a class='linknoticia' style='text-transform:uppercase;' href='?pg=noticia&id=$dados[id]'> $titulo</a><br /><br />
<a class='linknoticia2' href='?pg=noticia&id=$dados[id]'>$dados[texto]</a> <font class='postagemautor'>(v. $dados[cont])</font>";
}?>
  <br>
  <br></td> 
</tr> 
<? $x++;
} // end while 
?>
<tr><td height="1" background="images/layout/barrinha_divisao_horizontal.gif"></td></tr>
</table> 
<? } // end if numberall > 0 ?></td>
      </tr>
    </table>
        
</table>

ta indo so que eu quero um em especifica que fique sempre em primeiro, acho que vendo o código da pra ter uma ideia

Compartilhar este post


Link para o post
Compartilhar em outros sites

algo assim ?!

SELECT * 
FROM noticias_dados 
where idcat='8' 
order by (case idcliente = '123' then 0 else 1 end),data desc 
LIMIT 5

 

 




			
		

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloquei assim e não deu certo, segue o codigo abaixo:

$sql = mysql_query("SELECT * FROM noticias_dados where destaque='sim' order by data desc LIMIT 5");
$sql2 = mysql_query("SELECT * FROM noticias_dados where idcat='8' order by (case id = '1531' then 0 else 1 end),data desc LIMIT 5");
$total = mysql_num_rows($sql); 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas a $sql2 foi executada ? (Só ela tem o order bym não?)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, mas não com a CASE do cliente VIP.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.