$kategoriler=$db->prepare("SELECT * from kategoriler order by kategori_sira ASC");
yerine

$kategoriler=$db->prepare("SELECT * FROM kategoriler AS k WHERE EXISTS (SELECT * FROM haberler AS h WHERE k.id = h.kategori AND h.durum = 1) order by k.kategori_sira ASC");