php - 如何将变量设置为 select 语句上的默认选择以及从数组中列出选择

标签 php mysql arrays

我目前正在使用下拉框的 select 语句来从多个产品中进行选择。在编辑表单上,我希望选择自动选择最初选择的选项,该选项存储在变量 $product 中。我使用数组从数据库表中引入所有选择,但是无法让数组正常工作以及选择 $product 中存储的数据。

我目前得到的代码是;

  $selectquery = "SELECT * FROM `loanproducts`";
  $selectresult = mysqli_query($connection, $selectquery);



  <select name="product" style="width: 150px">
    <?php while($row1 = mysqli_fetch_array($selectresult)):;?>
    <option><?php echo $row1[1];?></option>
    <?php endwhile;?>
  </select></p></div>

我不确定我是否已经解释了我想要做得足够好,因为即使试图解释它也让我感到困惑。

-基本上,例如,我从数组中有 3 个选择 - A、B 和 C。 -如果用户浏览表单并选择 B,当我然后去编辑他们的选择时,我希望他们的选项出现在选择框 (B) 中 - 而不是数组上的第一个选择(可能是 A)

谢谢

最佳答案

我改变了你的编程风格,这对我来说不太舒服。不管怎样,这里重要的是我用两个可能的值创建变量 $selected :"""selected",具体取决于当前产品 ($row1[1]) 等于所选产品 ($product)。除一个选项外的所有选项都会获得 "",只有选定的产品才会获得 "selected" :

<select name="product" style="width: 150px">
<?php while($row1 = mysqli_fetch_array($selectresult))
      { if ( $row1[1] == $product ) // IF CURRENT PRODUCT WAS SELECTED
             $selected = "selected";
        else $selected = "";
        echo "<option $selected>{$row1[1]}</option>";
      }
?>
</select></p></div>

关于php - 如何将变量设置为 select 语句上的默认选择以及从数组中列出选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39600434/

相关文章:

php - 如何在mysql中显示所需的列?

mysql - 在 OS X 的命令行中使用 MySQL - 找不到命令?

javascript - 如何在 Javascript 中对数组值使用 split() 方法?

php - 按字母顺序打印数据库结果

php - 检测 DateTime 对象中是否指定了时间

php - TCPDF 将底部边距设置为零

mysql - 按字母顺序对查询结果进行排序,但在排序时排除 "the"?

mysql - 测试 MySQL 中是否存在子记录

c# - 如何将 C# 中的二维数组传递给 C++ DLL?

java - java中的二维数组用于遍历行