当前值来自 Mysql 的下拉列表
Dropdown with current value from Mysql
我正在努力解决使用 MySQL (MariaDB) 的 CRUD 中的问题。
情况如下:
我在这个 table 中有一个名为“工具”的数据库 table 我有几列提供各种生产工具的信息,如名称、序列号、供应商等。
我有一个 CRUD 页面,我可以在其中编辑记录,但它们是“开放文本字段”,每个人都可以在那里的文本框中输入任何内容。例如,我想将“供应商”字段设为数据库的下拉列表。没问题,我有一个 table 可能的选项,我只是替换
<input type="text" name="vendors" value=<?php echo $vendors;?>></td>
与:
<select name="vendors" id="vendors">
<?php
include "dbConn.php";
$records = mysqli_query($db, "SELECT vendoren, vendorbg From vendors");
while($data = mysqli_fetch_array($records))
{
echo "<option value='". $data['vendoren'] ."'>" .$data['vendorbg'] ."</option>";
}
?> </select>
在这种情况下,我有一个下拉列表,CRUD 的用户可以在其中 select 要记录哪个供应商,但是一旦您在 CRUD 界面中单击“编辑”,初始供应商记录就不再可见。
我尝试了很多方案,但我无法修复它们。
我想我需要以某种方式修改查询以加入来自 table“工具”的记录,其中最初记录了 selected 供应商。
补充:
我不是专业程序员,也许我需要示例的支持。完整的项目如下: 数据库:在数据库中,我有几个 tables - vendors - 用于供应商和工具的列表 - 这是我记录的“root” table工具数据添加页面- 我有一个页面,我在“工具”table 中填充数据。这里为了防止自由文本,我使用下拉菜单,例如,“供应商”CRUD 页面——在这个页面中,我可以从“工具”table 编辑、删除等记录。目标是:当我单击编辑 CRUD 中的某些记录时,字段“供应商”将与“供应商”table 中的选项一起下拉,但不知何故当您单击以编辑“工具”中的记录时table 默认为 select,因为用户可以编辑其他字段,但不完全是“供应商字段”。
如果有人正在查看此主题,仅供参考。
问题已解决:
<select name="vendors" id="vendors" required>
<?php
include "dbConn.php";
$records = mysqli_query($db, "SELECT vendors FROM tools WHERE id=$id UNION SELECT vendoren FROM vendors");
while($data = mysqli_fetch_array($records))
{
echo "<option value='". $data['vendors'] ."'>" .$data['vendors'] ."</option>";
}
?> </select>
现在下拉列表显示当前记录的值,并显示来自另一个 table 的其余选项。
我正在努力解决使用 MySQL (MariaDB) 的 CRUD 中的问题。 情况如下: 我在这个 table 中有一个名为“工具”的数据库 table 我有几列提供各种生产工具的信息,如名称、序列号、供应商等。 我有一个 CRUD 页面,我可以在其中编辑记录,但它们是“开放文本字段”,每个人都可以在那里的文本框中输入任何内容。例如,我想将“供应商”字段设为数据库的下拉列表。没问题,我有一个 table 可能的选项,我只是替换
<input type="text" name="vendors" value=<?php echo $vendors;?>></td>
与:
<select name="vendors" id="vendors">
<?php
include "dbConn.php";
$records = mysqli_query($db, "SELECT vendoren, vendorbg From vendors");
while($data = mysqli_fetch_array($records))
{
echo "<option value='". $data['vendoren'] ."'>" .$data['vendorbg'] ."</option>";
}
?> </select>
在这种情况下,我有一个下拉列表,CRUD 的用户可以在其中 select 要记录哪个供应商,但是一旦您在 CRUD 界面中单击“编辑”,初始供应商记录就不再可见。 我尝试了很多方案,但我无法修复它们。 我想我需要以某种方式修改查询以加入来自 table“工具”的记录,其中最初记录了 selected 供应商。
补充: 我不是专业程序员,也许我需要示例的支持。完整的项目如下: 数据库:在数据库中,我有几个 tables - vendors - 用于供应商和工具的列表 - 这是我记录的“root” table工具数据添加页面- 我有一个页面,我在“工具”table 中填充数据。这里为了防止自由文本,我使用下拉菜单,例如,“供应商”CRUD 页面——在这个页面中,我可以从“工具”table 编辑、删除等记录。目标是:当我单击编辑 CRUD 中的某些记录时,字段“供应商”将与“供应商”table 中的选项一起下拉,但不知何故当您单击以编辑“工具”中的记录时table 默认为 select,因为用户可以编辑其他字段,但不完全是“供应商字段”。
如果有人正在查看此主题,仅供参考。 问题已解决:
<select name="vendors" id="vendors" required>
<?php
include "dbConn.php";
$records = mysqli_query($db, "SELECT vendors FROM tools WHERE id=$id UNION SELECT vendoren FROM vendors");
while($data = mysqli_fetch_array($records))
{
echo "<option value='". $data['vendors'] ."'>" .$data['vendors'] ."</option>";
}
?> </select>
现在下拉列表显示当前记录的值,并显示来自另一个 table 的其余选项。