Exception.php dosyasını bulamadığını söylüyor dosya yolunu yanlış vermiş olabilirsin phpmailer klasörü ile mail.php dosyası aynı dizinde olursa sorun çözülür
Doğru anladıysam şöyle de yapabilirsin.
Select'te seçim yaptığın an url'e yıl değeri gelecek bunu kontrol ederek card'ları getirebilirsin
<form method="GET">
<select name="yil" onChange="window.location.href=this.value" class="form-control">
<?php foreach ($yillar as $yil): ?>
<option value="<?=http://localhost/veriler?yil='.$yil["yil"].'?>"><?=$yil['yil']?></option>
<?php endforeach ?>
</select>
</form>
Bu şekilde get değerini al ve sorguda kullan.
if (isset($_GET['yil'])) {
$yil = $_GET['yil']
}
else{
$yil = '2021';
}
$query = $db->query(" SELECT yil FROM yazilar WHERE yil = $yil GROUP BY yil", PDO::FETCH_ASSOC);
İlk önce yılları al
$query = $db->query(" SELECT yil FROM yazilar GROUP BY yil", PDO::FETCH_ASSOC);
Sonra yılları sırala. 2. bir sorgu ile card body içinde ilk sorgumuzdan gelen yıl verisine göre verileri çek
<?php foreach ($query as $row): ?>
<div class="card-header">
<h3 class="card-title"><?= $row['yil']; ?> Yılı Yazılarımız</h3>
</div>
<div class="card-body">
<?php
$query2 = $db->query(' SELECT * FROM yazilar WHERE yil = '.$row['yil'].' ', PDO::FETCH_ASSOC);
?>
<?php foreach ($query2 as $row2): ?>
<li><?=$row2['baslik']?></li>
<?php endforeach ?>
</div>
<?php endforeach ?>
Önce tablodaki yılları groupby ile alman gerekir.
SELECT YIL_KOLONU FROM TABLO_ADI GROUP BY YIL_KOLONU
Bu şekilde tablondaki yılları elde edersin. Daha sonrasında gelen yılları döndürüp gelen içerikleri alabilirsin.
Ben yeterince iyi oynayamadım sanırım bulmaca oyunlarında pek iyi değilim :D "_" karakteri yerine "-" yazdığımdan kaynaklıymış teşekkürler :)
teşekkürler aradığım tam olarak böyle bir şeydi (: