Ir para conteúdo

POWERED BY:

Arquivado

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

New Job

[Resolvido] Seleção em banco de dados

Recommended Posts

Bom dia.

 

estou com um outro quebra cabeças aqui.

 

Tenho uma tabela com os registros.

 

Ai tenho que mostrar estes registros desta maneira na tela:

 

| s | s | N |

|___|___|___|

| | | |

| s | s | s |

|___|___|___|

| | | |

| s | s | s |

|___|___|___|

 

onde está o N não quero exibir, pois tenho ali um campo de busca.

 

Então fiz dois SELECT.

 

Um eu busco (sempre de forma aleatória) assim:

 

$sql_1 = "SELECT cod, nome FROM registros ORDER BY RAND() LIMIT 2";

Ai monto a tabela direitinho, com o campo de busca normal.

 

Ai depois montei os outros 6 registros.

 

$sql_2 = "SELECT cod, nome FROM registros ORDER BY RAND() LIMIT 6";

Porém como eu faço para não pegar os registros que já foram mostrados no SELECT 1????

Compartilhar este post


Link para o post
Compartilhar em outros sites

a primeira solução que me vem em mente...

 

no SQL2 coloque no WHERE cod NOT in ($codigos)

 

onde $codigos será populado com os códigos do primeiro SQL.

Compartilhar este post


Link para o post
Compartilhar em outros sites

a primeira solução que me vem em mente...

 

no SQL2 coloque no WHERE cod NOT in ($codigos)

 

onde $codigos será populado com os códigos do primeiro SQL.

 

 

Beleza, esta primeira parte já está ok.

 

$sql_2 = "SELECT cod, nome FROM registros WHERE cod NOT IN (".$codigos.") ORDER BY RAND() LIMIT 6";

Porém como eu definiria esta variável $codigos ???

 

 

a primeira solução que me vem em mente...

 

no SQL2 coloque no WHERE cod NOT in ($codigos)

 

onde $codigos será populado com os códigos do primeiro SQL.

 

 

Beleza, esta primeira parte já está ok.

 

$sql_2 = "SELECT cod, nome FROM registros WHERE cod NOT IN (".$codigos.") ORDER BY RAND() LIMIT 6";

Porém como eu definiria esta variável $codigos ???

 

 

Obrigado pela ajuda.

 

Resolvi meio que na gambiarra.

Fiz 3 selects.

 

Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

percorre o resultado e vai jogando na variavel...

 

$codigos = '';

foreach() {

$codigos .= $cod;

}

 

nao te dou o codigo perfeito pq nao conheço o php limpo com as funcoes nativas de bd, mas eh assim a forma mais simples...

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.