const express = require('express'); const mysql = require('mysql2'); const cors = require('cors'); const path = require('path'); const app = express(); const PORT = process.env.PORT || 7860; app.use(cors()); app.use(express.json()); app.use(express.static(path.join(__dirname))); const db = mysql.createConnection({ host: '42.115.33.6', port: 1611, user: 'root', password: 'root', database: 'appdb', charset: 'utf8mb4' }); db.connect(err => { if (err) { console.error('MySQL connection failed:', err); return; } console.log('Connected to MySQL'); db.execute(` CREATE TABLE IF NOT EXISTS comments ( id INT AUTO_INCREMENT PRIMARY KEY, anime VARCHAR(100) NOT NULL, name VARCHAR(100) NOT NULL, message TEXT NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 `); }); app.post('/api/comments', (req, res) => { const { anime, name, message } = req.body; if (!anime || !name || !message) { return res.status(400).json({ error: 'Missing fields' }); } db.execute( 'INSERT INTO comments (anime, name, message) VALUES (?, ?, ?)', [anime, name, message], (err, result) => { if (err) { console.error(err); return res.status(500).json({ error: 'Database error' }); } res.json({ success: true, id: result.insertId }); } ); }); app.get('/api/comments', (req, res) => { const { anime } = req.query; if (!anime) { return res.status(400).json({ error: 'Missing anime parameter' }); } db.execute( 'SELECT name, message, created_at FROM comments WHERE anime = ? ORDER BY created_at DESC', [anime], (err, rows) => { if (err) { console.error(err); return res.status(500).json({ error: 'Database error' }); } res.json(rows); } ); }); app.listen(PORT, '0.0.0.0', () => { console.log(`Server running at http://0.0.0.0:${PORT}`); });