diff --git a/controllers/tourController.js b/controllers/tourController.js
index ff5719350247b303f7ce7cbee55d2014ff82ce88..d1ef75db7d5e584cafb1ddd8e6d2b2c48dd5a2a2 100644
--- a/controllers/tourController.js
+++ b/controllers/tourController.js
@@ -30,30 +30,38 @@ exports.getRegister = (req, res) => {
 };
 
 exports.postLogin = (req, res) => {
-    const { email, password } = req.body;
-    User.comparePassword(email, password, (err, isMatch) => {
-        if (err || !isMatch) {
-            return res.render('login', { message: 'Invalid email or password' });
-        }
-        req.session.userId = email; // สามารถเก็บ ID หรืออีเมลของผู้ใช้ได้
-        res.redirect('/');
-    });
+  const { email, password } = req.body;
+  User.comparePassword(req.db, email, password, (err, isMatch) => {
+      if (err || !isMatch) {
+          return res.render('login', { message: 'Invalid email or password' });
+      }
+      req.session.userId = email; // เก็บอีเมลของผู้ใช้ไว้ใน session
+      res.redirect('/');
+  });
 };
 
 exports.postRegister = (req, res) => {
   const { name, email, password, confirmPassword } = req.body;
-  console.log(password, confirmPassword); // ดูค่าที่ส่งเข้ามา
 
   if (password !== confirmPassword) {
       return res.render('register', { message: 'Passwords do not match' });
   }
 
-  User.findOne(email, (err, user) => {
+  // ส่ง db เป็นพารามิเตอร์ให้กับ User.findOne
+  User.findOne(req.db, email, (err, user) => {
+      if (err) {
+          return res.render('register', { message: 'Error checking email' });
+      }
+
       if (user) {
           return res.render('register', { message: 'Email already in use' });
       }
-      User.create(name, email, password, (err, userId) => {
-          if (err) return res.render('register', { message: 'Error creating user' });
+
+      // ถ้าไม่มีผู้ใช้ ก็ทำการสร้างผู้ใช้ใหม่
+      User.create(req.db, name, email, password, (err, userId) => {
+          if (err) {
+              return res.render('register', { message: 'Error creating user' });
+          }
           req.session.userId = userId;
           res.redirect('/login');
       });
diff --git a/models/tourModel.js b/models/tourModel.js
index d9c0da9f42baa86c0b938b5a5d84a9d111433ea7..3ceabd6ba82bf8f8302a2d0f1eb315bb75e67a21 100644
--- a/models/tourModel.js
+++ b/models/tourModel.js
@@ -15,27 +15,30 @@ class Tour {
 const bcrypt = require('bcryptjs');
 
 class User {
-    static findOne(email, callback) {
+    // รับ db จากพารามิเตอร์
+    static findOne(db, email, callback) {
         const query = 'SELECT * FROM users WHERE email = ?';
-        req.db.query(query, [email], (err, results) => {
+        db.query(query, [email], (err, results) => {
             if (err) return callback(err);
             callback(null, results[0]);
         });
     }
 
-    static create(name, email, password, callback) {
+    // รับ db จากพารามิเตอร์
+    static create(db, name, email, password, callback) {
         const query = 'INSERT INTO users (name, email, password) VALUES (?, ?, ?)';
         bcrypt.hash(password, 10, (err, hashedPassword) => {
             if (err) return callback(err);
-            req.db.query(query, [name, email, hashedPassword], (err, results) => {
+            db.query(query, [name, email, hashedPassword], (err, results) => {
                 if (err) return callback(err);
                 callback(null, results.insertId);
             });
         });
     }
 
-    static comparePassword(email, password, callback) {
-        User.findOne(email, (err, user) => {
+    // รับ db จากพารามิเตอร์
+    static comparePassword(db, email, password, callback) {
+        User.findOne(db, email, (err, user) => {
             if (err || !user) return callback(err || 'User not found');
             bcrypt.compare(password, user.password, (err, isMatch) => {
                 if (err) return callback(err);
@@ -46,4 +49,5 @@ class User {
 }
 
 module.exports = User;
+
 module.exports = Tour;