Merhaba arkadaşlar çıldırmak üzereyim yardım edin lütfen..

aşağıda paylaşmış olduğum görsel de kategori ve alt kategorisine göre veriler geliyor fakat!
alt kategorinin sırasına gelen veriler beni deli etti bunun çözümü var mı ?

verilerin isimleri kafanızı karıştırmasın bilerek yapıldı aynı veri değil..



veri tabanı (kategori) ;



Kodlar ;


$kategoriss= mysql_query("SELECT * FROM `kategori`
WHERE kategori_id=$gelenid or ust_kategori_id=$gelenid
limit 3
" ) or die(mysql_error());

while($donader= mysql_fetch_array($kategoriss))

{
$id=$donader['kategori_id'];
$adi = $donader['adi'];

$haber = mysql_query("SELECT * FROM `haberler`
where kategori = '$id' and onay='1'
ORDER BY `haberler`.`id` DESC
limit 2

f($haber === FALSE) {
die(mysql_error()); // TODO: better error handling
}
while($cek= mysql_fetch_array($haber))

{
$id=$cek['id'];
$adi=$cek['adi'];
$resim=$cek['resim'];
}
}



aşağıdada listelemiyorum orası önemli değil