如何自动将Users表的usersId插入Parents表的user_id外键字段?
问题:Users表usersId无法自动作为外键插入Parents表user_id字段
我有Users和Parents两个独立数据表,表单数据能正常存入phpMyAdmin数据库,用过程式PHP和预处理语句处理表单,两个表单都能成功插入数据,但Users表的usersId作为外键插入Parents表的user_id字段时,数据库中始终显示NULL,只能通过phpMyAdmin的下拉列表手动更新该字段。
我需要实现:提交表单时,Users表的usersId自动填入Parents表的user_id字段。以下是我当前使用的预处理语句代码:
<?php if (isset($_POST["submit"])) { $mFname = $_POST["mFname"]; $mLname = $_POST["mLname"]; $mEmail = $_POST["mEmail"]; $mPhone = $_POST["mPhone"]; $fFname = $_POST["fFname"]; $fLname = $_POST["fLname"]; $fEmail = $_POST["fEmail"]; $fPhone = $_POST["fPhone"]; $addressL1 = $_POST["addressL1"]; $addressL2 = $_POST["addressL2"]; $city = $_POST["city"]; $stateAbbr = $_POST["stateAbbr"]; $zip = $_POST["zip"]; $user_Id = $_POST['user_Id']; include_once 'dbh.inc.php'; include_once 'functions.inc.php'; $sql1 = "UPDATE parent INNER JOIN users ON users.usersId = parent.user_id SET parent.user_id = users.usersId"; if (mysqli_query($conn, $sql1)) { echo "Record updated successfully"; } else { echo "Error updating record: " . mysqli_error($conn); } $sql = "INSERT INTO parent (mFname, mLname, mEmail, mPhone, fFname, fLname, fEmail, fPhone, addressL1, addressL2, city, stateAbbr, zip, user_id) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?);"; $stmt = mysqli_stmt_init($conn); if (!mysqli_stmt_prepare($stmt, $sql)) { echo "SQL error"; } else { mysqli_stmt_bind_param($stmt, "ssssssssssssis", $mFname, $mLname, $mEmail, $mPhone, $fFname, $fLname, $fEmail, $fPhone, $addressL1, $addressL2, $city, $stateAbbr, $zip, $user_id); mysqli_stmt_execute($stmt); } header("Location: ../mf2.php?parentinfo=success"); }

截图显示其他数据均正常插入,但user_id字段为NULL。我曾尝试用内连接更新语句,提示更新成功但数据库无变化;也曾尝试使用usersId会话变量,均未成功。作为新手,恳请详细的解决方案。
内容的提问来源于stack exchange,提问作者Joshua Lee
相关产品推荐
相关产品推荐

