Merhaba,
kategoriler ve yazilar olmak üzere iki tane tablom var.
kategoriler tablosundaki Sütunlar;
id - isim
yazilar tablosundaki Sütunlar;
id - kategori_id - baslik - yazi
şeklinde..
Kategorileri;
Kategori 1
Kategori 2
..
gibi listeliyebiliyorum.
Peki;
Kategori 1
--Kategori 1'deki Son Yazı
Kategori 2
--Kategori 2'deki Son Yazı
..
gibi nasıl listeliyebilirim?
Kategorideki son yazı
6
●689
- 17-04-2007, 13:44:32
<?php include("ayar.php"); $ksonuc = mysql_query("Select id, isim From kategori_tablon order by id"); while($ksatir = mysql_fetch_array($ksonuc)){ $kid = $satir['id']; $kisim = $satir['isim']; $ysonuc = mysql_query("Select id, kategori_id, baslik, yazi From yazi_tablon where kategori_id = $kid order by id limit 1"); while($ysatir = mysql_fetch_array($ysonuc)){ $id = $satir['id']; $baslik = $satir['baslik']; $yazi = $satir['yazi']; echo "Kategori: ".$kisim."<br>"; echo "Başlık : ".$baslik."<br>"; echo "Yazı : ".$yazi."<br>"; echo "Devamı : <a href=\"yazi.php?id=".$id."\">".$baslik."</a><br>"; } } ?>Bu şekilde olması gerekir deneyemedim hata verirse yazarsınız. - 17-04-2007, 13:51:52Öylede olurKadir adlı üyeden alıntı: mesajı görüntüle

Burada sadece 1 kayıt alacağımız için 0,1 yapmaya gerek yok. Eğer 5'ci kayıt ile 15'ci kayıt arasını ver deseydik bu şekilde kullanabilirdik misal. Tek kayıt aldığımız için limit 1 de yapılabilir. - 18-04-2007, 00:03:58Herkese çok çok teşekkürler. Ben ErsaT'ın verdiği kodla denedim. Bir kaç değişiklikle tamamen sorunsuz şekilde çalıştı.
<?php include("ayar.php"); $ksonuc = mysql_query("Select id, isim From kategori_tablon order by id"); while($ksatir = mysql_fetch_array($ksonuc)){ $kid = $ksatir['id']; $kisim = $ksatir['isim']; $ysonuc = mysql_query("Select id, kategori_id, baslik, yazi From yazi_tablon where kategori_id = $kid order by id desc limit 1"); while($ysatir = mysql_fetch_array($ysonuc)){ $id = $ysatir['id']; $baslik = $ysatir['baslik']; $yazi = $ysatir['yazi']; echo "Kategori: ".$kisim."<br>"; echo "Başlık : ".$baslik."<br>"; echo "Yazı : ".$yazi."<br>"; echo "Devamı : <a href=\"yazi.php?id=".$id."\">".$baslik."</a><br>"; } } ?>Bu kodun sorunsuz hali.
***
Değişiklikler ise;
$kid = $satir['id'];
$kisim = $satir['isim'];
dan;
$kid = $ksatir['id'];
$kisim = $ksatir['isim'];
'a..
$id = $satir['id'];
$baslik = $satir['baslik'];
$yazi = $satir['yazi'];
dan;
$id = $ysatir['id'];
$baslik = $ysatir['baslik'];
$yazi = $ysatir['yazi'];
'a..
$ysonuc = mysql_query("Select id, kategori_id, baslik, yazi From yazi_tablon where kategori_id = $kid order by id limit 1");
dan;
$ysonuc = mysql_query("Select id, kategori_id, baslik, yazi From yazi_tablon where kategori_id = $kid order by id desc limit 1");
'a..
***
jagum senin verdiğin daha pratik birşeye benziyor sanki
Biraz daha ayrıntılı açıklarsan sevinirim. - 18-04-2007, 00:37:20Çalıştıysa sorun yok. Mesajda belirtiğim gibi deneyememiştim. Neyse pürüzleri görmüşsünüz önemli değil.Paye adlı üyeden alıntı: mesajı görüntüle
Kategori tablosu farklı olduğu için mecburen iki sorgu olması gerekecek. group by şeklinde sıralama sadece aynı olanları görme farklıları sırala anlamına geliyor. İşin özü hem kategori hemde yazılar tablosuna bağlantı şart.jagum adlı üyeden alıntı: mesajı görüntüle

