Ir para conteúdo
Fórum Script Brasil
  • 0

Porobrema Com Rand() No Mysql


MaXiMuS

Pergunta

3 respostass a esta questão

Posts Recomendados

  • 0

to de volta.. bom.. conseguir resolver o problema do RAND()... to usando o código assim agora:

$buscatotal = mysql_query("SELECT * FROM $tab_walls");
$total = mysql_num_rows($buscatotal);
if($total>0) {

function make_seed() {
list($usec, $sec) = explode(' ', microtime());
return (float) $sec + ((float) $usec * 100000);
}
srand(make_seed());
$randval = rand();

for ($i = 0; $i < $nwalls; $i++) {

$wall[$i] = mt_rand(1,$total);
$id_busca = $wall[$i];
$buscawall = mysql_query("SELECT * FROM $tab_walls WHERE id='$id_busca'") or die("ERRO AO SELECIONAR");

    $colunas = "2";
    if (($i%$colunas)==0) {
        echo "</tr>";
        echo "<tr>";
    }
    $dados = mysql_fetch_array($buscawall);
    $id = $dados["id"];
    $thumb = $dados["thumb"];
    echo "<td width=50% align=center><a href='javascript:;' Onclick=\"javascript:abre('walls.php?ID=$id','640','480','0')\"><img border=0 src='$thumb' width=120 height=90></a></td>";
    }



echo "</table>
</center></div>
</td></tr>
</table>
</center></div>";
} else {
    echo "Nenhum registro encontrado";
}
}

dessa veiz postei o código completo.. heheeh.... bom.... ele tá randomizando certinho.. porém tem vez que ele repete o mesmo wall.. fika duas vezes o mesmo... isso tem como corrigir?

Link para o comentário
Compartilhar em outros sites

  • 0

Eu sugiro usar a função shuffle( ) que embaralha um array assim:

<?php // versão 8.2
$conn=new mysqli("localhost","root","","diario");
$consulta = $conn->query("select codprod from tbprod");
$produtos=[];
while($row = $consulta->fetch_assoc())
{
    $produtos[]=$row['codprod'];
}
shuffle($produtos);
$i=-1;
?>
<table><tr>
    <?php foreach($produtos as $codprod): 
          $i++;
          if($i==36): $i=0; ?>
          <tr>
          <?php endif;?>
    <td style=text-align:right><?=$codprod?>
    <?php endforeach;
    ?>
</table>

 

Captura de tela 2024-08-05 233033.png

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...