registerUser: async (req, res) => { const { email, rpassword, confirm_password, fname, lname } = req.body; // ตรวจสอบว่ารหัสผ่านทั้งสองตรงกันหรือไม่ if (rpassword !== confirm_password) { req.flash('message', 'Passwords do not match!'); return res.redirect('/register'); } try { // ตรวจสอบว่าอีเมลมีอยู่ในระบบหรือไม่ const [existingUser] = await pool.execute('SELECT * FROM users WHERE email = ?', [email]); if (existingUser.length > 0) { req.flash('message', 'Email is already registered.'); return res.redirect('/register'); } // แฮชรหัสผ่าน const hashedPassword = await bcrypt.hash(rpassword, 10); // บันทึกข้อมูลผู้ใช้ในฐานข้อมูล รวมทั้ง fname และ lname const query = 'INSERT INTO users (email, password, fname, lname) VALUES (?, ?, ?, ?)'; await pool.execute(query, [email, hashedPassword, fname, lname]); // ส่งข้อความแจ้งเตือนและเปลี่ยนเส้นทางไปที่หน้า login res.redirect('/login'); } catch (err) { console.error('Error inserting user:', err); res.status(500).send('Error occurred'); } }