Blog Tinux Net

Verificación en tiempo real a la base de datos

Para verificar en tiempo real si un registro existe o no en la base de datos mientras se rellena un formulario, se puede utilizar Node.js en el backend con Express y una biblioteca como Socket.IO para la comunicación en tiempo real.

Backend (Node.js/Express):

Primero hay que asegurarse de tener instalado mysql y socket.io

npm install express mysql socket.io

Configuración del Servidor:

Para abrirlo en un puerto en concreto. crear una variable .env en el directorio raíz donde esta package.json con
HOST=8080

Archivo App.js const express = require('express'); const http = require('http'); const socketIo = require('socket.io'); const mysql = require('mysql');

const app = express(); const server = http.createServer(app); const io = socketIo(server);

const connection = mysql.createConnection({ host: 'localhost', user: 'tu_usuario', password: 'tu_contraseña', database: 'tu_base_de_datos' });

connection.connect(error => { if (error) throw error; console.log("Conectado a la base de datos"); });

io.on('connection', (socket) => { socket.on('checkUser', (userData) => { connection.query('SELECT * FROM users WHERE username = ?', [userData.username], (error, results) => { if (error) throw error; socket.emit('userExists', results.length > 0); }); }); });

server.listen(8080, () => { console.log('Servidor corriendo en puerto 8080'); });