【发布时间】:2023-01-21 00:45:06
【问题描述】:
我正在尝试创建一个登录表单,但出现了问题。系统是;如果用户存在该密码和电子邮件;系统将把电子邮件值和密码值存储为会话。之后 我希望系统将用户路由到 /searchpage。
我怎样才能做到这一点 ?
app.post("/Logincheck",function(req,res){
var route;
var login_email_input=req.body.email_input;
var login_password_input=req.body.password_input;
var query="SELECT COUNT(*) FROM users WHERE Email_value='emailx' AND Password='passwordx'";
var query_2=query.replace("emailx",login_email_input);
var query_3=query_2.replace("passwordx",login_password_input);
server.query(query_3,function(error,fields,result){
if(error){
throw error;
}
else{
var row=result[0]["COUNT(*)"];
if(row==0){
res.send("<script>alert('The user is not found.Please try again.')</script>");
}
else{
var sess=req.session;
session.email=login_email_input;
session.password=login_password_input;
route="/searchpage";
}
}
【问题讨论】:
-
你做错了你的查询,这使得它容易受到 SQL 注入的攻击,再次阅读 lib 的文档,它应该像
server.query('SELECT .... WHERE Email_value=? ....', [login_email_input], function(error,result,fields){,注意错误,结果,字段
标签: javascript html css express web