如何将下拉列表中的选定值添加到数据库中?

Posted

技术标签:

【中文标题】如何将下拉列表中的选定值添加到数据库中?【英文标题】:How can i add the selected value from a dropdown list to the database? 【发布时间】:2013-01-29 07:27:26 【问题描述】:

我可以从数据库中调用下拉框的值,但我无法将所选值保存在数据库中的新行中。谁能告诉我哪里出错了?

if (isset($_POST["addDestination"]) && $_POST["addDestination"]=="yes")

    $countriesName=$_POST["countriesName"];
    $Name=$_POST["Name"];
    $photo=$_POST["photo"];
    $description=$_POST["description"];
    $Airport=$_POST["Airport"];
    $Airport2=$_POST["Airport2"];
    $Airline=$_POST["Airline"];
    $Airline2=$_POST["Airline2"];
    $Airline3=$_POST["Airline3"];
    $Airline4=$_POST["Airline4"];

    $dbQuery= "INSERT INTO destinations VALUES( NULL, '$countriesName', '$Name', '$photo', '$description', '$Airport', '$Airport2', '$Airline', '$Airline2', '$Airline3', '$Airline4')";
    $result= mysql_query($dbQuery,$db);

从数据库中调用值的html代码和php代码是:

<form id="addDestination" name="addDestination" method="post" action="addDestination.php">
    <input type="hidden" name="addDestination" value="yes">
    <div id="countriesName" class="info"><span class="formLabel">Country (Please select one of the following)</span><br>
    <?php 
      echo "<p></p>";
      $dbQuery="SELECT Name FROM countries order by name asc";
      $dbResult=mysql_query($dbQuery);
      echo "<select name=\"Name\">";
      while ($dbRow=mysql_fetch_array($dbResult)) 
        $Name=$dbRow["Name"];
        echo "<option value='$Name'>$Name</option>";
      
      echo "</select>";
      echo "<p> </p>";
    ?>
  </div>

当我尝试保存选定的值时,数据库中的字段保持空白。

【问题讨论】:

尝试运行 $result= mysql_query($dbQuery,$db) 或 die(mysql_error()) 看看它显示了什么错误。这将有助于调试。 您的问题有点混乱,您尝试将哪个值提交到数据库中? 抱歉应该解释得更好。我希望能够从下拉框中选择一个国家/地区的名称,我可以从数据库中的国家/地区表中填充该名称,但是当我选择要添加到目的地表中的国家/地区时,该字段保持空白。我希望这是有道理的,再次抱歉 【参考方案1】:

我认为可能是这样,而不是:

$countriesName=$_POST["countriesName"];

您可能需要使用:

$countriesName=$_POST["Name"];

"Name" 是您的实际 HTML 选择的名称,而不是 "countriesName",它是包含的 div。

【讨论】:

我也刚刚注意到您已经在 POST 中传递了名称,因此您可能必须重命名您的 HTML 选择标签,例如。称它为 cName 并从 POST 变量中获取它。

以上是关于如何将下拉列表中的选定值添加到数据库中?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Laravel 在下拉列表中显示数据库中的选定值?

如何将引导模式内的下拉列表的选定值获取到php中的文本框中

PHP如果变量等于下拉列表中的值,则将“选定”属性添加到选项

如何将选定的下拉列表值与 MVC 中的模型属性进行比较

如何通过jquery将下拉列表中的选定值设置为空

当某个值返回为空时,如何使用下拉列表中的选定值?