我正在努力使用 PHP 语句将 mySQL 数据插入到多个表中。
我有两个表:
用户
用户 ID(PK)
名字
姓氏
电子邮件
密码
简介
profile_ID (PK)
用户 ID(FK)
个人资料图片
profile_image_name
我像这样更新用户表:
$sql = "INSERT INTO user (first_name, last_name, email, password)
VALUES
('$_POST[first_name]', '$_POST[last_name]', '$_POST[email]', '$_POST[password]')";
user_ID 在数据库中设置为自动递增,因此当执行此代码时,插入的数据会自动分配给唯一的 PK,并存储在 session 中。虽然在同一点(创建帐户)我需要将 user_ID 作为 FK 插入到配置文件表中。这样,当用户上传他们的个人资料图片时,它将被分配给他们,他们将在个人资料表中有一条记录。
例如,我在图片上传页面上使用了这段代码:
$user_ID = $_SESSION['login'];
$ins1 = mysqli_query($db, "UPDATE profile SET `profile_image_name`='" . $profile_image_name . "' WHERE `user_ID`='$user_ID'");
$ins2 = mysqli_query($db, "UPDATE profile SET `profile_image`='" . $profile_image . "' WHERE `user_ID`='$user_ID'");
此代码仅在 user_ID FK 已存在于配置文件表中时才有效,那么如何像我之前所做的那样使用 php 语句插入它?我再次尝试使用第一种方法,但它似乎没有用......
最佳答案
您可以使用insert_id
获取您在Mysql 上插入的最后一个PK 自动递增
关于php - mySQL INSERT 到多个表使用 PHP 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36380479/