Ir para conteúdo

POWERED BY:

Arquivado

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

Bruno Furious

Preciso de uma função

Recommended Posts

Olá galera! meu segundo topico aqui no forum, seguinte eu tenho um sistema e nessa linha aqui:

 

$qr = "SELECT * FROM usuarios where status = 'ON' ORDER by pt_VisualizacaoTotal desc";

 

 

ele pega os usuarios com status ONLINE e deixa na ordem de visualização.

 

 

eu gostaria de alterar-lo para ele pega todos usuarios que existe registrado, e deixar no modo RANDOM "Aleatório", ou seja em cada f5 que eu der, vai ter outras pessoas, ele vai cada vez pegar uma sequencia de usuario novo

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual o db?

 

para pegar todos é so retirar o wrere

 

o randon depende do db

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim

 

qual o db?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tira a clausula where. para sua query retornar um resultSet com os usuários cadastrados.

Para 'deixar randômico',você pode dar por exemplo um shuffle no array contendo o resultSet da sua selectQuery e iterar normalmente sobre ele.

 

Ps:pode fazer uma 'iteração randômica' pegando em base um algoritmo de pesquisa binária.

Compartilhar este post


Link para o post
Compartilhar em outros sites

$qr = 'SELECT * FROM usuarios';
//$res = variavel que recebeu o resultSet da selectQuery
shuffle($res);
//iteração

Ao invés de usar o shuffle...pode deixar randômico fazendo a tal 'iteração randomica' baseada no algoritmo de pesquisa binária.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Atualmente está assim

<? dbcon();
$palavra = $_GET["palavra"];
$sexo = $_GET["sexo"];
if ($sexo == "-") { $sexo = ""; }
$cidade = $_GET["cidade"]; 
$estado = $_GET["estado"];
if ($estado == "-") { $estado = ""; }
$categoria = $_GET["categoria"];
if ($categoria = 0) { $categoria = ""; } 
$qr = "SELECT * FROM usuarios ORDER by pt_VisualizacaoTotal desc";
$sql = mysql_query($qr);
$total = mysql_num_rows($sql);
if (isset($_GET["pagina"])) { $pagina = $_GET["pagina"]; }
else { $pagina = "1"; }
$busca = $qr;
$registrosPorPagina = 6; 
if (empty($pagina)):  $pc = "1"; 	else:   $pc = $pagina; endif;
$inicio = $pc - 1; 
$inicio = $inicio * $registrosPorPagina; 
$limite = mysql_query("$busca LIMIT $inicio,$registrosPorPagina"); 
$totalRegistros = mysql_num_rows(mysql_query("$busca")); 
$numPaginas = $totalRegistros / $registrosPorPagina; 
 if ($total == 0) { 
echo "<p>Nenhum usuario encontrado.</p>"; 
}
if(!isset($colunas)) $colunas = 3; 
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá galera! meu segundo topico aqui no forum, seguinte eu tenho um sistema e nessa linha aqui:

 

$qr = "SELECT * FROM usuarios where status = 'ON' ORDER by pt_VisualizacaoTotal desc";

 

 

ele pega os usuarios com status ONLINE e deixa na ordem de visualização.

 

 

eu gostaria de alterar-lo para ele pega todos usuarios que existe registrado, e deixar no modo RANDOM "Aleatório", ou seja em cada f5 que eu der, vai ter outras pessoas, ele vai cada vez pegar uma sequencia de usuario novo

 

tenta assim:

 

 

$qr = "SELECT * FROM usuarios ORDER by RAND()";

 

 

faloww

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deu certo, só que são 6 registro por página, tem vez que aparece 4, 2 , 3 ,5 e tem vez que aparece os 6 certinhos..

 

 

como assim ? você diz que a ordem esta errada?

 

por que se for....

 

isso vai acontecer mesmo pq voce esta pedindo ao sql ordenar aleatóriamente...

 

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

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.