MySQL多对多

MySQL多对多,mysql,Mysql,我正在编写一个表单提交,它是通过php和MySQL完成的。我在表单中有一个字段,允许您将新用户与一个或多个市场关联(选择多个)。现在我让我的php脚本在dB中为新用户发布值,但不将该用户与市场联系起来。我创建了一个连接供应商和市场的联接表。我不明白的是,从技术上讲,供应商id不能与市场id关联,因为它尚未创建,因为表单尚未提交。有什么办法可以解决这个问题吗?非常感谢任何帮助!干杯 ****编辑**** ` 选择市场 选择市场 while($market=$sql->fetch()) { $sel

我正在编写一个表单提交,它是通过php和MySQL完成的。我在表单中有一个字段,允许您将新用户与一个或多个市场关联(选择多个)。现在我让我的php脚本在dB中为新用户发布值,但不将该用户与市场联系起来。我创建了一个连接供应商和市场的联接表。我不明白的是,从技术上讲,供应商id不能与市场id关联,因为它尚未创建,因为表单尚未提交。有什么办法可以解决这个问题吗?非常感谢任何帮助!干杯

****编辑****

` 选择市场 选择市场
while($market=$sql->fetch())
{
$selected=$market[“market\u name”]==$vendor\u事件?selected':'';
echo'.htmlspecialchars($market[“market_name]”)的缩写;
}
?>
`
$sql=$db->prepare(“插入供应商(供应商名称、企业名称、供应商城市、供应商州、供应商电话、供应商电子邮件、证书到期日、证书编号、供应商类型、销售的产品、选择市场)值(?,,,,,,,,,,,,,)”;
$sql->execute(数组($\u POST[“vendor\u name”]、$\u POST[“business\u name”]、$\u POST[“vendor\u city”]、$\u POST[“vendor\u state”]、$\u POST[“vendor\u email”]、$\u POST[“certificate\u expiration”]、$\u POST[“certificate\u number”]、$\u POST[“vendor\u type”],
$_POST[“销售的产品”]、$_POST[“选择市场”])


然后我想我需要一个查询来插入到“markets\u vendors”表中

一个表中的多条记录与另一个表中的多条记录相关。连接表是位于多对多关系的两个其他表之间的表。其目的是为这两个表的组合存储一条记录。

请向我们展示您的表结构和当前的代码。如果市场id不存在,那么你如何才能在下拉列表中列出市场?用户是供应商吗?如果供应商id不存在…那么表单数据包含创建它所需的所有信息,那么问题出在哪里?我现在有3个表:表1是“市场”表,表2是“供应商”表,表3是“市场供应商”表。当我要添加一个新供应商时,我已经用市场填充了一个下拉列表,当用户点击“保存”添加一个新供应商时,“供应商”表中的新行将添加供应商信息,但我还需要在“市场\供应商”表中添加一个新行,以将电子供应商与特定市场关联。
              while ($market = $sql->fetch())
              {
                $selected = $market["market_name"] == $vendor_event ? ' selected' : '';

                echo '<option'.$selected.' value="'.htmlspecialchars($market["market_name"]).'">'.htmlspecialchars($market["market_name"]).'</option>';
              }
              ?>
            </select>
          </div>`