const express = require('express'); const mysql = require('mysql2'); const session = require('express-session'); const app = express(); const port = 3000; // การตั้งค่าการเชื่อมต่อฐานข้อมูล MySQL (ใช้ pool) const db = mysql.createConnection({ host: process.env.DB_HOST, port: process.env.DB_PORT, user: process.env.DB_USER, password: process.env.DB_PASSWORD, database: process.env.DB_NAME, // replace with your database name waitForConnections: true, connectionLimit: 10, queueLimit: 0 }); // Test the database connection to ensure everything is set up correctly db.connect(err => { if (err) throw err; console.log("Connected to the database."); }); module.exports = { db }; // การตั้งค่า Express session app.use(session({ secret: 'your_secret_key', resave: false, saveUninitialized: true })); // การตั้งค่าการใช้ EJS app.set('view engine', 'ejs'); // การตั้งค่าการใช้ body-parser app.use(express.urlencoded({ extended: true })); app.use(express.json()); // ใช้ static files (CSS, JS) app.use(express.static('public')); app.get('/', (req, res) => { if (req.session.role === 'admin') { return res.redirect('/admin/dashboard'); } else if (req.session.role === 'customer') { return res.redirect('/customer/appointment'); } else { return res.render('login'); } }); app.use('/auth', require('./routes/auth')); app.use('/admin', require('./routes/admin')); app.use('/customer', require('./routes/customer')); // Starting the server app.listen(port, () => { console.log(`Server is running on http://localhost:${port}`); });