v2.5.2
Giriş yap

Php anasayfada konuların sayısı

omerg
234 defa görüntülendi

arkadaşlar anasayfada kategorilerin sağ tarafında kategoriye göre konuların sayısını kategoriye göre kategorinin sağ tarafına yazılır onu istiyorum

bmathers
478 gün önce

Merhaba, diğer soruna cevap vermiştim aynı veritabanı örneği ile beraber kod örnekleri aşağıya bıraktım. Bu sefer veritabanı işlemleri için düz PDO yerine BasicDB kullandım.

"categories" tablosu:
SütunAçıklama
category_id
category_titleKategori başlığı
category_createKategori oluşturulma tarihi
"blogs" tablosu:
SütunAçıklama
blog_id
blog_categoryBlog yazısının bağlı olduğu kategori id
blog_titleBlog başlığı
blog_contentBlog yazısının içeriği
blog_createBlog oluşturulma tarihi
Kategorilerin listelenmesi ve kategoriye ait blog yazılarının sayısının alınması

Back-end

# Tüm kategorileri çekiyoruz.
$categories = $db->from('categories')->all();

# $data isminde yeni bir dizi değişkeni oluştuyoruz, kategorileri ve 
# kategoriye ait blog yazılarının sayısını burada depolayacağız.
$data = [];

if($categories){

    # Eğer kategori mevcut ise foreach döngüsü
    foreach($categories as $category){
        
        # Kategori ismini $data dizisine ekliyoruz.
        $data[$category['category_id']['name'] = $category['category_title'];
        
        # Kategoriye ait blog yazılarının sayısını alıyoruz.
        $blogs = $db->from('blogs')
            ->where('blog_category', $category['category_id'])
            ->select('count(blog_id) as total')
            ->total();
            
        if($blogs){
        
            # Toplam blog sayısını $data dizisine ekliyoruz.
            $data[$category['category_id']['total_blog_count'] = $blogs;
        
        }
        
    }
    
}

Front-end

<ul>
    <?php foreach($data as $category): ?>
    <li>
        <?= $category['name'] ?>
        <span>Toplam Blog Sayısı: <?= $category['total_blog_count'] ?></span>
    </li>
    <?php endforeach; ?>
</ul>

BasicDB ile yaptığım veritabanı sorgularını yapay zeka (chatgpt vs.) kullanarak PDO sorgularına çevirebilirsin.

Ek olarak sorunu "Kategorilerle birlikte, kategorilerde bulunan blog yazılarının sayısını nasıl yazdırabilirim?" benzeri sorabilirsen daha anlaşılır olacağını düşünüyorum :)