-1

我对这一切都很陌生,我似乎无法在谷歌上找到正确的搜索来获得我正在寻找的答案。我有一个用户将用来创建新事务的前端。有一个下拉菜单与“类别”表相关联,该表与“事务”具有 1:M 关系(见图)。我的问题是,如果用户提交此表单以保存新交易,他们不知道类别表中的 ID,他们将要做的就是从从类别表中提取的下拉列表中选择一个。我现在所知道的就是从下拉列表中获取他们的输入并将其存储到事务表中的一个字段中。我试图了解如何使用关系,但在我对密钥如何工作的有限理解中,似乎除非你知道 ID 号是什么,那么关系就不好了。如果您所做的只是从下拉列表中获取提交并将其存储在事务表中,那么您仍然只是将类别名称存储在 2 个不同的表中,那么有什么意义呢?我在这里的某个地方错过了一步,我希望有人可以帮助理解这一点。

在此处输入图像描述

4

1 回答 1

2

用户不会知道类别 ID。(尽管如果他们愿意,他们可以。它在标记中。)更重要的是,您的代码将知道类别 ID。创建该下拉列表(select元素)时,您的代码将使用 ID 和名称填充。ID 用于值,名称用于显示文本。

生成的标记可能如下所示:

<select name="category">
    <option value="1">First Category</option>
    <option value="2">Second Category</option>
    <option value="3">Third Category</option>
</select>

等等。

当用户选择一个时,他们是根据文本进行选择的。但实际表单会将所选选项的发送回服务器。因此,如果用户选择Second Categorythen 在您的服务器端代码$_POST["category"]中将包含 value 2,这是您需要插入到您的交易记录中的 ID。

于 2013-10-06T15:10:47.880 回答