https://www.php.net/manual/tr/function.rawurlencode.php
https://www.php.net/manual/tr/function.rawurldecode.php
bunları kullanarak çözebilirsin.
Edit: aşağıya % eklemen gerekir büyük ihtimal.
([0-9a-zA-Z-_%]+)
$productgo bu değişkeni yazdırdığında istediğin veriler geliyormu yoksa sadece son ürünün verisimi geliyor.
Eğer son ürünün verisi geliyorsa SQL kodunu ona göre düzenlemelisin.
<?php foreach ($productgo as $i => $kategori) {?>
<option value="<?php echo $kategori['katid']; ?>" <?php echo ($i == key(end($productgo))) ? 'selected' : ''?>><?php echo $kategori['kategoriadi'];?></option>
<?php } ?>
son eleman a selected attribute'ü ekleyecektir.
css dosyasıda ne kadar küçük boyutlu olursa o kadar iyi.
https://prototurk.com/soru/1948-google-pagespeed-degeri-yukseltme
sayfa açılış hızı için önemli özellikle mobil cihazlar için.
active class'ını neye göre vereceksin bilemedim ama sadece 1.ci elemana vereceksen aşağıdaki gibi yapabilirsin.
for($i = 0; $i < 3; $i++)
{
echo '<li style="flex:50%;"'. ($i == 0) ? 'class="active"' : '' .'>';
echo '<span class="int-indicator-bar" style="width: 0px;"></span>';
echo '</li>';
}
aşağıdakini eklersen kaymaz.
.action ul {
right: 0px;
}
foreach($veriler AS $sira => $veri)
{
?>
<tr>
<td><?=$sira + 1?></td>
<td><?php
echo stripslashes($veri["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($veri['k_id'])?></span></td>
</tr>
<?php
}
Öncelikle aşağıdaki kısma anlam veremedim.Sql kodunun içerisinde parametre alacak bir yer yok ama burda parametre göndermişsin.
$calistir->execute(['k_baslik'=>$koleksiyon_id]);
Sql kodunu aşağıdaki gibi yapıp denermisin.
SELECT COUNT(`makale_tr`.`koleksiyon_id`) AS `adet` FROM `makale_tr` INNER JOIN `koleksiyon_tr` ON `koleksiyon_tr`.`k_id` = `makale_tr`.`koleksiyon_id` WHERE `koleksiyon_tr`.`k_id` = :k_baslik
$calistir->execute([':k_baslik'=>$koleksiyon_id]);
$data = $calistir->fetch(PDO::FETCH_ASSOC);
return $data['adet'];