gpt4 book ai didi

html - 在不同表、Mysql、Node.js 中插入多个信息

转载 作者:行者123 更新时间:2023-11-29 15:30:43 24 4
gpt4 key购买 nike

所以,我有三个表,用户,模块和中间表user_module,为了在用户和模块之间进行内部联接,我必须访问彻底的user_module

"SELECT user.uName, module.moduleName FROM user_module INNER JOIN user ON user.userID = user_module.userID_FK INNER JOIN module ON module.moduleID = user_module.moduleID_FK;",

我有一个表格,允许我插入用户的信息,我想选择用户采用哪个模块。到目前为止,我一直使用 phpmyadmin 手动将信息添加到 user_module 表中,其余的用户信息来自 node.js 代码

const parsed = bodyParser.urlencoded({ extended: false });
app.post("/", parsed, (req, res, next) => {
console.log(req.body);
connection.query(
"INSERT INTO user(name,surname,gender,dateOfBirth,email,userName,password) values('" +
req.body.name1 +
"','" +
req.body.surname1 +
"','" +
req.body.gender +
"','" +
req.body.birtdate +
"','" +
req.body.email1 +
"','" +
req.body.username1 +
"','" +
req.body.password1 +
"');",
(err, row, field) => {
if (!err) {
res.redirect("/");
} else {
console.log(err);
}
}
);
});

但是我如何从表单中获取信息,并将 2 个 id 放入中间表中?

<form action="/" method="post">
<p>Name:</p>
<input type="text" name="name1" /><br />
<p>Surname:</p>
<input type="text" name="surname1" /><br />
<p>Gender:</p>
<select name="gender">
<option value="m">Male</option>
<option value="f">female</option> </select
><br />
<p>course:</p>
<select name="module">
<option value="1">Programming</option>
<option value="2">webApp</option> </select
><br />
<p>Date of Birth:</p>
<input type="date" name="birtdate" placeholder="select Birth date" />
<p>Email:</p>
<input type="email" name="email1" />
<p>Username:</p>
<input type="text" name="username1" />
<p>Password:</p>
<input type="password" name="password1" /> <br />
<input type="submit" value="submit" />
</form>

最佳答案

您执行的操作顺序在这里非常重要:

1) 您必须先保存用户,因为您需要拥有其 ID。 成功保存后,您需要获取其 ID。有时,成功保存后,某些框架会提供已保存实体的 ID,但您始终可以通过新的 SQL 查询手动获取它,以获取具有特定电子邮件的用户的 ID。

SELECT id from users where email='email_of_the_user_you_just_saved"

2)获得用户ID并从前端收集模块ID后,只需将其插入中间表user_module即可。

INSERT INTO user_module (user_id, module_id) VALUES (users_id_you_got_from_step_1, module_id_you_got_from_frontend);

关于html - 在不同表、Mysql、Node.js 中插入多个信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58755940/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com