Kutuda bir açılır DB değerini gösteren

3 Cevap php

Bu tüm mükemmel çalışıyor, bir açılır menü doldurur benim kod, ancak bir veritabanı kaydı düzenlerken, ben veritabanında şu anda ne olduğu aşağı açılan ilk değeri istiyorum, ben bunu nasıl yaparım?

<li class="odd"><label class="field-title">Background <em>*</em>:</label> <label><select class="txtbox-middle" name="background" />
                        <?php
                        $bgResult = mysql_query("SELECT * FROM `backgrounds`");
                        while($bgRow = mysql_fetch_array($bgResult)){
                            echo '<option value="'.$bgRow['name'].'">'.$bgRow['name'].'</option>';
                        }
                        ?>
                    </select></li>

3 Cevap

Siz ilgili <option> üzerinde selected="selected" niteliğini ayarlarsınız. Muhtemelen akım değeri içeren değişken karşı kontrol etmek, while döngüsünün check çeşit olurdu.

Sen gibi yapabilirsiniz:

$counter = 1;
while($bgRow = mysql_fetch_array($bgResult)){
  if ($counter === 1)
  {
    echo '<option value="'.$bgRow['name'].'" selected="selected">'.$bgRow['name'].'</option>';
  }
  else
  {
    echo '<option value="'.$bgRow['name'].'">'.$bgRow['name'].'</option>';
  }

  $counter++;
}

Senin için selected="selected" eklemiş görülebileceği gibi, bu yüzden sizin için otomatik olarak çalışacaktır :)

Yanılıyorsam, sana seçilen arka plan (background alanında örn. kullanıcıların tablo) tutan başka bir veritabanı tablo var olduğuna inanıyorum beni düzelt, sen diğer tablodan arka almak ve eklemek için bir sorgu yapmak gerekir = "seçilmedi "arka plan seçeneği etiketi özniteliği, (yardımcı olur umarım) Aşağıdaki kodu kontrol edin:

<?php
    $result = mysql_query("SELECT `background` FROM `users` LIMIT 1");
    $myBg   = mysql_fetch_array($result, MYSQL_ASSOC);      
    $bgResult = mysql_query("SELECT * FROM `backgrounds`");
    while($bgRow = mysql_fetch_array($bgResult)){
        if($myBg['background'] == $bgRow['name'])
            echo '<option value="'.$bgRow['name'].'" selected="selected">'.$bgRow['name'].'</option>';
        else
            echo '<option value="'.$bgRow['name'].'">'.$bgRow['name'].'</option>';
    }
?>