Ir para conteúdo

Arquivado

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

AveNoturna

Não randomiza

Recommended Posts

Galera quero randomizar o resultado de um BD de maneira que quando for exibido alguma info do BD ele esteja linkado ... È um sistema de news mas eu quero que as news sejam exibidas de forma aleatória .... eu consegui eescrever esse script ai que linka o titulo da news no restop da news.... mas não tô conseguindo rendomizar o resultado....

 

<?include("funcoes.php");$mysql = new artigos;$mysql->conectar()?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title> Artigos - Index</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><link href="artigos.css" rel="stylesheet" type="text/css"></head><script language=JavaScript><!--function openWindow(url, name) {  popupWin = window.open(url, name, 'scrollbars=0,resizable=0,toolbar=0,width=600,height=400')}// --></script><body bgcolor="#ffffff" text="#000000" leftmargin="0" topmargin="0"><table width="470" align="center"><tr><td valing="top"><?php     $resultat=mysql_query("SELECT id FROM pna_artigos ");      if(mysql_num_rows($resultat)>0){$artnum = mysql_num_rows($resultat);$num=$nb_artigos;if($pagina=='') {$pagina=0;}echo '';if($pagina>0){echo '<a href="index.php?pagina='.($pagina-$num).'"><font size="1"><b>Anterior</b></font></a>  ';}$result=mysql_query("SELECT COUNT(id) FROM pna_artigos");$linhap=mysql_fetch_row($result);$i=1;while ($i<(($pagina + $num)/$num)) {   echo '<font face="Verdana, Verdana" size="1"><a href="index.php?pagina='.($num*($i-1)).'">'.$i.'</a></font> ';   $i++; } echo '<font face="Verdana, Arial" color="black" size="1">Páginas : <b>'.$i.'</b></font> '; $i++;while ($i<=ceil($artnum/ $num)) {   echo '<font face="Verdana, Arial" size="1"><a href="index.php?pagina='.($num*($i-1)).'">'.$i.'</a></font> ';   $i++; }if($linhap[0]>($pagina+$num)){echo '<a href="index.php?start='.($pagina+$num).'"><font size="1"><b>Próxima</b></font></a> ';}  ?>  </td></tr><?  $query = mysql_query("SELECT * FROM pna_artigos ORDER BY rand() limit 2 $pagina,$num");  while($artigo=mysql_fetch_array($query)) {    $titulo=$artigo["titulo"];    $tamanho=$artigo["tamanho"];    $visto=$artigo["visto"];    $art_id=$artigo["id"];    $data=$artigo["data"];  ?>  <tr>    <td background="pontilhado.gif" height="1" valing="top"></td>  </tr>  <tr><td valign="top">  <tr>    <td><img src="txt.gif"> <font face="Verdana" size="2"> - <a href="javascript:openWindow('ler.php?id=<? echo $art_id; ?>');">    <? echo $titulo; ?></a><br>      <font size="1">Tamanho: <? echo $tamanho; ?>Kb | Visto <? echo $visto; ?> vezes | Data: <? echo $data; ?></font></font></td>  </tr>  <tr>    <td background="pontilhado.gif" height="1" valing="top"><img src="spacer.gif" width="450" height="1"></td>  </tr><br><? }  }  else {   print("<font face=Verdana size=1>Nenhum artigo foi cadastrado!</font></td></tr>");  }  ?></table></body></html>
Quem puder me ajudar!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Independente de seu codigo, se você quer pegar um registro aleatório de seu bd use:

select campos from tabela order by rand() limit 1

Eu já fiz isso:
?> </td></tr><? $query = mysql_query("SELECT * FROM pna_artigos ORDER BY rand() limit 2 $pagina,$num"); while($artigo=mysql_fetch_array($query)) {   $titulo=$artigo["titulo"];   $tamanho=$artigo["tamanho"];   $visto=$artigo["visto"];   $art_id=$artigo["id"];   $data=$artigo["data"]; ?>
Mas não funciona! Motivo de eu estar perguntando!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tire o numero 2 desta linha e testa.

 

$query = mysql_query("SELECT * FROM pna_artigos ORDER BY rand() limit 2 $pagina,$num");

é Impressionante o estrago que um nº fora do lugar faz!!

 

 

Valew... tirei o 2 e funfou corretamente!!

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.