v2.5.2
Giriş yap

Kategori Sıralama Yapımı

coder
640 defa görüntülendi

Merhaba.

Kategoriler tablosunda category_order diye bir sütun var.
Kategoriler buradaki numara sırasına göre anasayfada listeleniyor.

Ben bu sırayı yönetim panelinden düzenlemek istiyorum.

Aşağıdaki gibi kategori sayısını aldım.
Kaç tane kategori varsa o kadar numara oluşsun diye For döngüsüne soktum.
Numarayı tuttuğum değişken $i.

Ben burada şu kısımları çözemedim.

  • Tabloda 3 tane verim var ancak select menüsünde 2 veri gösteriyor.
    $i değişkenini 1 den başlattığım için. Ancak 0 dan başlatınca da numara 0 dan başlıyor.
    Ben 1 den başlasın istiyorum.

  • Buradaki $i değişkeni diyelim ki değeri 2. category_order sütununda da 2 değeri varsa option selected olsun.

<select name="kategori_sira">
	<?php
		$say = count($kategoriler);
		for ($i = 1; $i != $say; $i++){
			echo '<option>'.$i.'</option>';
		}
	?>
</select>
Cevap yaz
Cevaplar (4)
coder
1697 gün önce

@shelby ben verdiğiniz kodu uyarlayamadım maalesef.

Benim kategoriler sayfaya şu şekilde geliyor.

$kategoriler[0]['category_order'];
$kategoriler[1]['category_order'];

Buna göre nasıl olmalı? Foreach döngüsünden geçirmeyi düşündüm ama işin içinden çıkamadım.

shelby
1697 gün önce

<?php
$kategori = [1,2,3,4,5,6,7,8,9];
$kategori_id = 5;
?>

<select>
<?php for($i=0; $i<count($kategori); $i++): ?>

<option value="<?php echo ($i+1);?>"<?php if (($i+1)==$kategori_id) echo ' selected ';?>><?php echo ($i+1);?></option>

<?php endfor; ?>
</select>

coder
1697 gün önce

@shelby teşekkür ederim. Selected işlemi kısmı için bir öneriniz var mı?

shelby
1698 gün önce

echo '<option>'.($i + 1).'</option>';

Sorununu çözebilir.