【发布时间】:2019-10-23 14:50:19
【问题描述】:
我想将表单详细信息保存到 MYSQL 数据库,并使用 nodemailer 将表单详细信息邮寄给管理员。 到目前为止,我能够将数据发送给管理员并将数据单独保存到 MySql 数据库,但我想要它做的是同时保存和发送表单详细信息。
app.post('/send',function(req,res){
var type_lea=req.body.lev_type.value
res.write('type "' + req.body.lev_type.value+'".\n');
let transporter = nodeMailer.createTransport({
host: 'smtp.gmail.com',
port: 465,
secure: true,
auth: {
user: 'marcus1313@gmail.com',
pass: 'Password'
}
});
app.post('/submit',function(req,res){
var employ_id=req.body.emp_id;
var reason=req.body.leave_reason;
var sql = "INSERT INTO leave_det (Emp_id,Reason) VALUES
('"+req.body.emp_id+"','"+ req.body.leave_reason+"',)";
conn.query(sql, function (err, result) {
if (err) throw err;
console.log("1 record inserted");
});
在这个 html 代码中,我只能调用一个 post 请求,但我想同时调用它们。
<form action="/send" name="mail" class="loyal" method="post" >
</form>
【问题讨论】:
-
通常你应该有一个单一的路线
app.post('/send',function(req,res){,你必须做保存到数据库的逻辑,一旦完成,你就可以触发邮件成功响应数据库保存 -
只使用一个路由“/send”并在那里使用您的/submit 代码?
-
将两段代码写在一个post请求中
-
你需要小心这个 SQL 查询。它对 SQL 注入并不安全
-
ArayniMax 请详细说明您刚才所说的这个话题,这似乎是一件严肃的事情。
标签: javascript html css mysql node.js