当我键入的用户名是有在表“用户”我没有面临任何错误,但当我键入错误的名称,这是用户名是没有在表中我面临的错误,这是错误和代码如下所附.
export const register = (req, res) => {
//CHECK USER IF EXISTS
const q = "SELECT * FROM users WHERE username = ?";
const result = db.query(q, [req.body.username]);
db.query(q, [req.body.username], (err, result, data) => {
if (err) return res.status(500).json(err);
if (data.length) return res.status(409).json("User already exists!");
//CREATE A NEW USER
//Hash the password
const salt = bcrypt.genSaltSync(10);
const hashedPassword = bcrypt.hashSync(req.body.password, salt);
const q =
"INSERT INTO users (`username`,`email`,`password`,`name`) VALUE (?)";
const values = [
req.body.username,
req.body.email,
hashedPassword,
req.body.name,
];
db.query(q, [values], (err, data ) => {
if (err) return res.status(500).json(err);
return res.status(200).json("User has been created.");
});
});
};
1条答案
按热度按时间5gfr0r5j1#
您需要将
data.length
更改为result.length
,数据包含有关执行的一些信息,因此它将始终是真实的:你也可以删除这一行,它没有被使用