id ye göre tablodan veri saydırma
Merhaba iki tablom var biri koleksiyon_tr bunun içinde koleksiyon tanımlayıcı bilgilerini tutuyorum (ID,k_baslik,k_adi, k_id,seflink,tablo).
Diğer tablomda makalelerin olduğu tablo: makale_tr (ID,yazar,baslik,link,koleksiyon_id). Ortak noktaları ise
koleksiyon_tr.k_id = makale_tr.koleksiyon_id
panelimde koleksiyon adlarının listesini çektim ve bu koleksiyon adlarının kaç makalede kullanıldığını saydırmak için fonksiyon yazmaya çalıştım.
Fakat makale_tr tablosu koleksiyon_id sütununa göre saydırtamadım. Toplam makale sayısını veriyor. Kod konusunda yardımcı olur musunuz?
public function sayKoleksiyon($koleksiyon_id){
$sql="SELECT koleksiyon_id FROM makale_tr
inner join koleksiyon_tr
on koleksiyon_tr.k_id = makale_tr.koleksiyon_id";
$calistir=$this->baglanti->prepare($sql);
$calistir->execute(['k_baslik'=>$koleksiyon_id]);
$count = $calistir->rowCount();
return $count;
}
<tr>
<th>#</th>
<th>Koleksiyon Adı</th>
<th>Makale Sayısı</th>
</tr>
</thead>
<tbody>
<?php
$veriler=$VT->VeriGetir("koleksiyon_tr","","","ORDER BY ID ASC");
if($veriler!=false)
{
$sira=0;
for($i=0;$i<count($veriler);$i++)
{
$sira++;
?>
<tr>
<td><?=$sira?></td>
<td><?php
echo stripslashes($veriler[$i]["k_baslik"]);
?>
</td>
<!-- koleksiyon_id ye göre saydırtmam lazım koleksiyon saydırması başarılı değil.-->
<td><span class="badge bg-success"><?=$count->sayKoleksiyon($i)?></span></td>
</tr>
<?php
}
}
?>
</tbody>
inner join ile birleştir count() ilede saydır