Seçili açılan menü öğesi aşağı veritabanından önceden seçilebilir nasıl yapılır?

0 Cevap php

Ben kendi başıma çalıştım ama doğru çalışması için alamadım. Temelde ben daha önce teslim sonrası düzenlenebilir bir düzenleme sayfasını yapıyorum. Bu yeni sayfada formu önceden gönderilen verileri önceden doldurulmuş olduğunu. Daha önce seçildi şeylerden biri bir açılır bir kategori oldu. Ben varsayılan aşağı bu düzenleme sayfanın damla biri seçili olarak önceden choden kategori göstermek buna sahip çalışıyorum.

            <select name="categories">
            <?php

                // get the category the post is assigned to
                $query = mysql_query("SELECT category FROM posts");
                while ($row = mysql_fetch_assoc($query)) {
                    $chosenCategory = $row['id'];
                }

                // display a drop down of all categories with the chosen category preselected
                $query = mysql_query("SELECT * FROM categories");
                while ($row = mysql_fetch_assoc($query)) {
                    $catId = $row['id'];
                    $catName = $row['name'];

                    if ($catId == $chosenCategory) {
                        $selected = "selected='selected'";
                    }

                    echo "<option value='$catId' $selected>$catName</option>\n";
                }

            ?>
            </select>

Benim koduyla sorun Seçilen = her seçenek öğesi atanmış kategorisinden başlayan 'seçilen' ekler olduğunu. Ben sadece atanan kategori seçeneği takılı olması gerekir.

Yani, örneğin, sonrası "beysbol" Burada mevcut çıkış nasıl göründüğü adlı bir kategoriye atanır varsayalım:

<option value='someid'>Camping</option>
<option value='someid'>Grilling</option>
<option value='someid' selected='selected'>Baseball</option>
<option value='someid' selected='selected'>Swimming</option>
<option value='someid' selected='selected'>Extreme Frisbe</option>
<option value='someid' selected='selected'>Watching TV</option>

Bu sadece başlangıç ​​ve beyzbol da bitmeli, bunun yerine orada başlar ve son menü öğesi biter, o kadar doğal ki önceden seçilmiş olan biridir.

Bunu düzeltmek için?

0 Cevap