v2.5.2
Giriş yap

Select Option ile veritabanındaki veriyi seçili hale getirmek.

Anonim
1,200 defa görüntülendi ve 1 kişi tarafından değerlendirildi

Merhaba, ürün ekle sayfasından option ile verileri ürün tablosuna ekliyorum.
Ürün düzenleme sayfasında en son eklenen veri geliyor. Update edince her seferinde aynı kategori başlığını post eder.
Amacım db üzerinden tüm kategoriler gelecek ama option inputunda önceden insert edilen veri seçili gelmesini istiyorum.

Cevap yaz
Cevaplar (11)
yeni2021
1046 gün önce

@qplot, neye bu kadar tavırlandın bilmiyorum. Dediğimde ne vardı ki?
Ayrıca senin gibiler derken "?", ne düşündüysen aklından ne geçirdiysen senin olsun.
seni sana bıraktım, başka da bir şey demem ! Seviyeye bak ya..!

devcikox
1046 gün önce

Hacım senin paylaştığın php kod da doğru, burada mantık hatası yapmışım muhtemelen. Ürün tablosunda zaten tek bir kategori var :) tüm veriyi döndürüyor aslında ama o kolonda başka kategori olmadığı için sadece ürüne ait kategoriyi dönderiyor.
Muhtemelen biraz uğraşınca ortaya çıkar, tekrar burada paylaşırım. İhtiyacı olan faydalanır.

makifgokce
1046 gün önce

$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.

devcikox
1046 gün önce

@makifgokce cevabın için teşekkür ederim, farklı bir yapıyla bu sonucu aldım, fakat seçili option + seçili olmayanlarda listelenmeli ki değişiklik yapılabilsin.
Senin kodunla da çalıştırdım. Sanırım INNER JOIN ile ilgili bir mantık hatası var. Teşekkür ederim ilgilendiğin için.

makifgokce
1046 gün önce
<?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.

devcikox
1046 gün önce

Kardeşlerim, bu şekilde bilgi alışverişi yapılan platformlarda yapıcı yorumlar yapalım, birbirimizi kırmayalım. Kodun en son düzenlenmiş halini paylaşacağım toparlayabilirsem. İlgiliniz için teşekkür ederim. Elinize sağlık.

qplot
1046 gün önce

adam urun ekleme yapmıs duzenleme yapmıs okadarınıda kendısı halleder

madem çok biliyorsun @yeni2021 ozaman kodu yazacaksın inan senin gibiler yüzünden cevap yazasım gelmiyor

devcikox
1046 gün önce

Aşağıdaki kod bloğuyla sadece seçili olanı alıyor, aynı zamanda diğer kategorilerde görüntülenmeli ki; Yanlış kategori seçilmişse ürün düzenleme işlemlerinde kullanıcı kategoriyi UPDATE edilebilsin.

                <?php $product=$connection->prepare('SELECT * FROM urun INNER JOIN kategori ON kategori.katid=urun.kategori WHERE ID=?');
                                $product->execute(array($_GET['id']
                                ));
                                $productgo=$product->fetchAll(PDO::FETCH_ASSOC);
                                ?>
                            <label class="col-md-3 control-label" for="inputDefault">Kategori</label>
                            <div class="col-md-6">
                                <select name="kategori" id="" class="form-control">
                                <?php foreach ($productgo as $kategori) {?>
                                    <option value="<?php echo $kategori['katid']; ?>" ><?php  echo $kategori['kategoriadi'];?></option>
                                <?php } ?>
                                </select>
                            </div>
                        </div>
yeni2021
1046 gün önce

@qplot bu şekilde yanlış kategori gönderdiyse değiştiremez ?
önceden gönderilmiş kategori seçili gelmeli ama değiştirmek isterse de diğer kategorileri de görebilmeli

qplot
1046 gün önce

<option value='$kategoriidsi' <?php echo $insetettigindeger==$kategoriidsi ? "selected" : '' ?>> <?php echo $kategoriadi ?></option>

burdan yazdım umarım hata yoktur :)

yeni2021
1046 gün önce

https://prototurk.com/soru/2187-option-value-degerini-selected-olarak-getirmek

bende sormuştum. Sanırım inner join ile kategori tablonu ve ürünler tablonu birleştirip foreach ile kategori adlarını döndüreceksin
value olarak eğer kategori tablosundaki id ile ürün tablosundaki id eşleşiyorsa
selected value olarak kategori id yi getir
eşleşmiyorsa tüm kategorileri listele demen lazım

sözel ifadesi bu ama koda dökemem :) bilgim çok yok.