如何将动态下拉列表中的值保存到MySQL数据库中

时间:2013-07-17 06:28:38

标签: php html mysql database html-select

我创建了一个动态下拉列表,现在我想将下拉列表中的值添加到我的数据库中。我正在向用户显示“Category_Name”,并希望在数据库中存储“Category_ID”。我写了以下代码。请检查一下。

 $select_query=          "Select * from category";
    $select_query_run =     mysql_query($select_query);    
    echo "<select name='category'>";
        while   ($select_query_array=   mysql_fetch_array($select_query_run) )
                    {
                         echo "<option value= '$select_query_array['category_id']' >".htmlspecialchars($select_query_array["name"])."</option>";
                    }
                 $selectTag= "</select>";
                 echo $selectTag;
  

解析错误:语法错误,意外''(T_ENCAPSED_AND_WHITESPACE),   期待标识符(T_STRING)或变量(T_VARIABLE)或数字   第50行的F:\ xampp \ htdocs \ CMS \ insert_product.php中的(T_NUM_STRING)

2 个答案:

答案 0 :(得分:1)

while   ($select_query_array=   mysql_fetch_array($select_query_run) )
            {
                 echo "<option value= '$select_query_array['category_id']' >".htmlspecialchars($select_query_array["name"])."</option>";
         $selectTag= "</select>";
         echo $selectTag;

应该是

while   ($select_query_array=   mysql_fetch_array($select_query_run) )
            {
                 echo "<option value= '{$select_query_array['category_id']}' >".htmlspecialchars($select_query_array["name"])."</option>";
            }
         $selectTag= "</select>";
         echo $selectTag;

你缺少while循环的右括号。您还缺少要替换的变量周围的大括号。

答案 1 :(得分:1)

改变 -

echo "<option value= '$select_query_array['category_id']' >".htmlspecialchars($select_query_array["name"])."</option>";

echo "<option value='".$select_query_array['category_id']."'>".htmlspecialchars($select_query_array["name"])."</option>";

并按照@bansi的建议添加最后一个大括号,如果不是的话。

如果有问题,请告诉我。