Ir para conteúdo

Arquivado

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

Elson Lima

[Resolvido] Filtrar dados que ja foram exibidos em consulta sql a

Recommended Posts

Ola galera!

 

To fazendo um sistema onde tenho 3 consultas sql.

Na primeira consulta ele mostra 1 registros de uma determinada tabela,

Na segunda consulta ele mostra 3 registros desta mesma tabela, mas nao mostra o que foi mostrado na primeira consulta.

Na terceira consulta quero que ele mostre todos os outros registros, menos os que foram exibidos nas consultas 1 e 2;

 

vou postar o codigo:

 

Aqui eu mostro apenas o ultimo registro:

$noticias = mysql_query("SELECT * FROM noticia WHERE cat_id='7' ORDER BY not_id DESC LIMIT 1") or die(mysql_error());

$not = mysql_fetch_array($noticias);

$not_id_principal = $not['not_id'];

$not_image_noticia = $not['not_image'];

$not_titulo_noticia = $not['not_titulo'];

$not_subtitulo_noticia = $not['not_subtitulo'];

 

///////////////////////////////////////////////////////////////////////////////////////////////

 

Aqui eu mostro 3 registros, mas nao mostro o que foi mostrado na consulta acima usando o NOT LIKE:

 

$noticias_lista = mysql_query("SELECT * FROM noticia WHERE cat_id='7' AND not_id NOT LIKE '$not_id_principal'ORDER BY not_id DESC LIMIT 3")or die(mysql_error());

while($not_lista = mysql_fetch_array($noticias_lista)){

$not_mini_image = $not_lista['not_image'];

$not_mini_titulo = $not_lista['not_titulo'];

$id_mini = $not_lista['not_id'];

 

/////////////////////////////////////////////////////////////////////////////////////////////

 

Aqui agora que ta pegando pq o NOT LIKE ta pegando somente o ultimo id da consulta acima, eu quero que ele pegue todos, e nao exiba os que foram mostrados nas consultas 1 e 2.

 

$ger = mysql_query("SELECT * FROM noticia WHERE not_id NOT LIKE $not_id_principal AND not_id NOT LIKE $id_mini ORDER BY not_id DESC LIMIT 15") or die (mysql_error());

while($noti = mysql_fetch_array($ger)){

$titulo_geral = $noti["not_titulo"];

$image_geral = $noti["not_image"];

 

(Assim ele so pega o ultimo id de cada consulta).

 

 

Ajudem por favor, minha cabeça ja ferveu rsrsrsrsr

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloque na primeira consulta

 

$ids_listados = array(); 
$ids_listados[] = $not_id_principal

 

 

na segunda coloque

 

$ids_listados[] = $id_mini

 

 

e na terceira, faça a consulta assim

 

$ids_listados = implode(",",$ids_listados);
$ger = mysql_query("SELECT * FROM noticia WHERE not_id NOT IN ($ids_listados) ORDER BY not_id DESC LIMIT 15") or die (mysql_error());

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.