<?php
$query = $db->read_query("
SELECT kat.*, ur.*
FROM kd_urunkategori as kat
RIGHT JOIN kd_urunler as ur ON ( kat.Kat_ID = ur.KatId )
WHERE ur.Durum='E'
GROUP BY kat.Kat_ID
ORDER BY ur.ID DESC
") or die($db->sql_error());
while($urun = $db->sql_fetcharray($query)){
?>Arkadaşlar yukarıdaki kod çalışmakta ama urunler tablosundan sadece 1 adet veri çekiyor. bir türlü çözemedim nerde hata yapıyorum bilen arkadaşlardan yardım lütfen.
php-mysql join (tablo birleştirme) nerde hata yapıyorum
4
●429
- 05-03-2014, 00:22:37Kimlik doğrulama veya yönetimden onay bekliyor.
- 05-03-2014, 18:05:48Kimlik doğrulama veya yönetimden onay bekliyor.@zeki_sniper; tablonuzdaki verilerin bi' kısmını gösteren bi' resmi konuya ekleyebilir misiniz? Örnek verdiğiniz betikte while kısmına $urun değişkenini sokuyorsunuz. while içinine şu kodu ekleyip;
$urunler[] = $urun;
while sonuna;
print_r($urunler);
ekleyip sonucunu konuya ekleyebilir misiniz? - 05-03-2014, 23:58:48bu şekilde yaptığımızda normal olarak nevar ne yok ekrana yazması lazım,
ama gene de eklediğiniz kodu ekleyip denedim tabloda nevar ne yok karışık bir şekilde ekrana yazdırdı
- 06-03-2014, 00:12:10@zeki_sniper; o zaman sorgu doğru çalışıyor. şu şekilde denerseniz verileri tam manasıyla almış olursunuz.
<?php $query = $db->read_query( "SELECT kat.*, ur.* FROM kd_urunkategori as kat ". "RIGHT JOIN kd_urunler as ur ON ( kat.Kat_ID = ur.KatId ) ". "WHERE ur.Durum='E' GROUP BY kat.Kat_ID ORDER BY ur.ID DESC" ) or die($db->sql_error()); $urunler = array(); while($urun = $db->sql_fetcharray($query)) { $urunler[] = $urun; } foreach($urunler as $urun) { // Ürünleri aldık. Burada istediğimiz işlemi yapabiliriz. echo $urun["ID"]."\n"; }