2

データベースからデータを取得してドロップダウンリストに表示する、完全に正常に機能するドロップダウンリストを作成しました。問題は、選択タグで「選択された」属性を使用する場所を特定できないことです。現在、選択したフィールドは何でも開きますが、ドロップダウンリストには最初の名前が表示されます。「selected」属性も使用しようとしましたが、ドロップダウン リストに最後のアイテム名が表示されていました。

親切にチェックして、ループで「selected」属性を使用する方法を教えてください。

    <?php
    //Drop Down List
    $sub_query = "select * from sub_categories where category_id=$category_id ";
    if (!$sub_query_run = mysql_query($sub_query))
    {
        echo mysql_error();
    }
    else 
    {
        echo "<select name='menu1' id='menu1' >
              <option  value='#'> All</option> ";
        while ($sub_query_fetch = mysql_fetch_array($sub_query_run))
        {
        //$sub_query_fetch = mysql_fetch_array($sub_query_run);
        $sub_category_id2 = $sub_query_fetch['sub_category_id'];
        $sub_category_name = $sub_query_fetch['sub_category_name'];
        echo "<option value='earings2.php?sub_category_id=$sub_category_id2' >"    
                .htmlspecialchars($sub_category_name= $sub_query_fetch['sub_category_name']).       
             "</option>";   
        }
    }       
4

5 に答える 5

1
<option value="#" selected>ALL</option>

「selected」はオプションタグに含める必要があります

于 2013-08-30T06:39:40.850 に答える
1

<option>タグ でselectを使用する必要があります

これを試して

while ($sub_query_fetch=    mysql_fetch_array($sub_query_run))
{
//$sub_query_fetch= mysql_fetch_array($sub_query_run);
$sub_category_id2=   $sub_query_fetch['sub_category_id'];
$sub_category_name= $sub_query_fetch['sub_category_name'];

$selected = ($isSelected == $sub_category_id2) ? 'selected' : ''; should be your selected condition fetch from db

echo "<option ".$selected."
value='earings2.php?sub_category_id=$sub_category_id2' >"
.htmlspecialchars($sub_category_name= $sub_query_fetch['sub_category_name']).       
"</option>";
}
于 2013-08-30T06:41:35.110 に答える