mysql多对多

nzkunb0c  于 2021-06-23  发布在  Mysql
关注(0)|答案(1)|浏览(134)

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

编辑

`选择市场选择市场

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>`
``` `$sql = $db->prepare("INSERT INTO vendors (vendor_name, business_name, vendor_city, vendor_state, vendor_phone, vendor_email, certificate_expiration, certificate_number, vendor_type, products_sold, choose_market) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"); $sql->execute(array( $_POST["vendor_name"], $_POST["business_name"], $_POST["vendor_city"], $_POST["vendor_state"], $_POST["vendor_phone"], $_POST["vendor_email"], $_POST["certificate_expiration"], $_POST["certificate_number"], $_POST["vendor_type"], $_POST["products_sold"], $_POST["choose_market"]));` 然后我想我需要一个查询来插入到“markets\u vendors”表中
yquaqz18

yquaqz181#

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

相关问题