我有一个名为member_registry
的表,其中包含成员信息,其列包含:
-id
-member_name
-member_email
-member_password
-member_phone
我有一个名为estock
的表,其功能是获取他们想要购买的产品的发布数据。它的列包含:
-member_id
-product_name
-product_quantity
-product_price
然后我有一个名为products
的表,其列包含:
-product_id
-product_name
-product_price
-product_image
我想要的是当用户将他们想要购买的产品提交到estock
我希望能够将他们的名字(member_registry.member_name)发布到列estock.member_id中的estock
表中。
我必须记住的一件事是用户名(member_registry.member_name)可以从页面上的session_username获取。
反之亦然,将表单数据插入到estock表后,
我希望能够从estock
获取数据,这些数据也会包含来自member_registry
表的信息:`
请帮帮我。这是我第一次加入表格。我希望任何人都明白我想要实现的目标。
答案 0 :(得分:2)
@klaudia我认为这会对你有帮助
SELECT * FROM member_registry
INNER JOIN estock ON member_registry.id = estock.member_id
WHERE your where statement
这将根据您的where语句从两个表中返回eveything。 如果要获取特定列,请在SELECT statemet
中提及列名而不是*答案 1 :(得分:1)
我认为你不能同时执行SELECT和INSERT吗?我不是SQL的专家,但我可能会做这样的事情:
$name = $_SESSION['session_username'];
$query = "SELECT id FROM member_registry WHERE member_name = '$name'";
$result = mysqli_query($link, $query) or die(mysqli_error($link));
$memberRow = mysqli_fetch_array($result);
$member_id = $memberRow['id'];
$query = "INSERT INTO estock (member_id, product_name, product_quantity, product_price)
VALUES ('$member_id',[value], [value], [value])";
mysqli_query($link, $query) or die(mysqli_error($link));
我希望这会有所帮助。
修改强>
如果您想从estock和member_registry表中获取信息,可以试试这个:
$query = "SELECT * FROM estock AS e, member_registry AS m WHERE e.member_id = m.id";