lostyazilim
tr.link

Veritabanından içerikleri kategorilerine ayırarak çekme[SORU]

7 Mesajlar 893 Okunma
lstbozum
tr.link

enesbeycom enesbeycom Enes Alperen HÜRÜM Kullanıcı
  • Üyelik 04.07.2017
  • Yaş/Cinsiyet 26 / E
  • Meslek Freelancer PHP Developer
  • Konum Kahramanmaraş
  • Ad Soyad E** H**
  • Mesajlar 47
  • Beğeniler 11 / 19
  • Ticaret 1, (%100)
Merhaba Wmaracı.

Bir script üzerinde çalışıyorum. Sitenin ana sayfası için bir yardıma ihtiyacım var. Gruplar isminde bir tablom var. Tablonun ekran görüntüsü aşağıdadır.



Benim yapmak istediğim şey şu. Bu tablodaki tüm gruplar ana sayfada listelenecek. Ama her kategori için ayrı bir tablo açılacak ve o tabloda sadece o kategoriye ait veriler listelenecek. Mesela kategori numarası 1 olan gruplar listelenecek ve o kategoriye ait 5 tane veriyi listeledikten sonra o tabloyu kapatacak ve kategori numarası 2 olan grupları listelemeye başlayacak. Bunu her kategori için ayrı bir değişken atayıp WHERE ile sadece o kategorideki içerikleri çekebilirdim ama yönetim panelinden kategori eklediğim zaman fonksiyon dosyama o kategori için yeni bir değişken atayacağım sonra ana sayfada o fonksiyonu çalıştıracağım vs. Hem işlevsel değil hem de kod kalabalığı olur böyle. Benim istediğim şey şu. 1 tane değişken atayacağım ve bütün verileri o değişkenle işleyip kategorilerine göre ayırmak. Yeni bir kategori eklediğim zaman da otomatik olarak ana sayfaya o kategori için bir tablo oluşmasını sağlamak istiyorum. Biraz karışık anlatamadıysam kusura bakmayın. Dilim döndüğünce anlatmaya çalıştım. Bunu nasıl yapabilirim?
 

 

İçinde bulunduğum projeler;
enesbey.com => Blog adresim
phplisans.com => Php script güvenliği
wmaraci
reklam

rmznkapar rmznkapar WM Aracı Kullanıcı
  • Üyelik 22.06.2017
  • Yaş/Cinsiyet 26 / E
  • Meslek Öğrenci
  • Konum Kocaeli
  • Ad Soyad R** K**
  • Mesajlar 106
  • Beğeniler 23 / 19
  • Ticaret 0, (%0)
sql de sütündaki en büyük değeri çekersiniz sonra bu değeri for döngüsüyle döndüre döndüre çalıştırabilirsiniz. Yanlış anlamadıysam tabii.
 

 

enesbeycom enesbeycom Enes Alperen HÜRÜM Kullanıcı
  • Üyelik 04.07.2017
  • Yaş/Cinsiyet 26 / E
  • Meslek Freelancer PHP Developer
  • Konum Kahramanmaraş
  • Ad Soyad E** H**
  • Mesajlar 47
  • Beğeniler 11 / 19
  • Ticaret 1, (%100)
Bunu koda dökmekte sıkıntı yaşıyorum.
 

 

İçinde bulunduğum projeler;
enesbey.com => Blog adresim
phplisans.com => Php script güvenliği

rapcrown rapcrown WM Aracı Kullanıcı
  • Üyelik 04.12.2015
  • Yaş/Cinsiyet 30 / E
  • Meslek Php Developer
  • Konum Trabzon
  • Ad Soyad E** B**
  • Mesajlar 117
  • Beğeniler 5 / 32
  • Ticaret 3, (%100)
Ben altta pdo ile örnek verdim yapın neyse ona göre değiştirebilirsin. Fetchall bütün tabloyu listeler.

$grup = $db->query("SELECT * FROM grup")->fetchall();
foreach($grup as $gurup){

$grupid = $gurup['id'];
$icinigetir = $db->query("SELECT * FROM tabloadi where grup_id='$grupid'")->fetchall();

foreach($icinigetir as $ic){

print_r($ic);
}

}


enesbeycom

kişi bu mesajı beğendi.

wmaraci
wmaraci

enesbeycom enesbeycom Enes Alperen HÜRÜM Kullanıcı
  • Üyelik 04.07.2017
  • Yaş/Cinsiyet 26 / E
  • Meslek Freelancer PHP Developer
  • Konum Kahramanmaraş
  • Ad Soyad E** H**
  • Mesajlar 47
  • Beğeniler 11 / 19
  • Ticaret 1, (%100)
Hocam böyle kategori numarasına göre çektim içerikleri. Her şey doğru ama mesela 1. Kategorideki içerikleri ayrı bir tabloya siralayip 2. Kategoriye gecince baska bir tabloda siralamam lazım. Burda takılıyorum
 

 

İçinde bulunduğum projeler;
enesbey.com => Blog adresim
phplisans.com => Php script güvenliği

rapcrown rapcrown WM Aracı Kullanıcı
  • Üyelik 04.12.2015
  • Yaş/Cinsiyet 30 / E
  • Meslek Php Developer
  • Konum Trabzon
  • Ad Soyad E** B**
  • Mesajlar 117
  • Beğeniler 5 / 32
  • Ticaret 3, (%100)
table yapısını kullanıoyrsan basit aslında
Bunları iç sorgulara dahil edersen hepsi farklı olur.
enesbeycom

kişi bu mesajı beğendi.

enesbeycom enesbeycom Enes Alperen HÜRÜM Kullanıcı
  • Üyelik 04.07.2017
  • Yaş/Cinsiyet 26 / E
  • Meslek Freelancer PHP Developer
  • Konum Kahramanmaraş
  • Ad Soyad E** H**
  • Mesajlar 47
  • Beğeniler 11 / 19
  • Ticaret 1, (%100)

rapcrown adlı üyeden alıntı

table yapısını kullanıoyrsan basit aslında
Bunları iç sorgulara dahil edersen hepsi farklı olur.




Buraya o dediğinizi nasıl uygulayabilirim hocam. Yeni başladım da pek bilgim yok.

require_once "panel/BasicDB.php";
require_once "panel/baglan.php";
$sitebilgi = $db->select('site')
->run(TRUE);
session_Start();
?>

$kategori = $db->select("kategoriler")
->run();
foreach($kategori as $kate){

$kateid = $kate['idsi'];
$grupcek = $db->select("gruplar")
->where('kategori', $kate['idsi'])
->orderby('id', 'desc')
->limit(0, 5)
->run();

foreach ($grupcek as $sonuc) {

$kategoriadi = $db->select('kategoriler')
->run(TRUE);

if ($sonuc['kategori'] == $kate['idsi']) {
$kategoriyaz = $kate['kategoriadi'];
}

echo $sonuc['id'];
echo ' - ';
echo $sonuc['isim'];
echo ' - ';
echo $kategoriyaz;
echo '
';
}
}
?>
 

 

İçinde bulunduğum projeler;
enesbey.com => Blog adresim
phplisans.com => Php script güvenliği
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al