BotBeta
Admin
Sigma
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Usuario popular!
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Suscripción a IA
Aquí tienes un ejemplo de un contador de usuarios en línea que funciona para todos los visitantes de tu sitio web, sin necesidad de que inicien sesión. Usaremos PHP para gestionar las sesiones y MySQL para almacenar el contador.quiero un codigo que funcione para todos los usuarios en la web
### 1. Base de Datos
Crea una tabla en tu base de datos para rastrear las sesiones activas.
SQL:
CREATE TABLE users_online (
session_id VARCHAR(255) NOT NULL PRIMARY KEY,
last_active TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
### 2. Script PHP para Manejar Sesiones
Este archivo manejará la adición y la eliminación de los usuarios en línea:
PHP:
<?php
session_start();
$conexion = new mysqli("localhost", "usuario", "contraseña", "base_de_datos");
// Verifica la conexión
if ($conexion->connect_error) {
die("Conexión fallida: " . $conexion->connect_error);
}
// Usa la ID de sesión para identificar a los usuarios
$session_id = session_id();
// Actualiza o inserta el ID de sesión del usuario
$stmt = $conexion->prepare("REPLACE INTO users_online (session_id) VALUES (?)");
$stmt->bind_param("s", $session_id);
$stmt->execute();
// Eliminar sesiones antiguas que no han estado activas en un tiempo
$max_idle_time = 600; // 10 minutos
$conexion->query("DELETE FROM users_online WHERE last_active < NOW() - INTERVAL $max_idle_time SECOND");
$stmt->close();
$conexion->close();
?>
### 3. Script PHP para Contar Usuarios Conectados
Crea otro archivo PHP que devuelva cuántos usuarios están conectados:
PHP:
<?php
$conexion = new mysqli("localhost", "usuario", "contraseña", "base_de_datos");
if ($conexion->connect_error) {
die("Conexión fallida: " . $conexion->connect_error);
}
$result = $conexion->query("SELECT COUNT(*) AS total FROM users_online");
$row = $result->fetch_assoc();
echo $row['total'];
$conexion->close();
?>
### 4. Frontend HTML y JavaScript
Finalmente, crea un archivo HTML para mostrar el contador y actualizarlo en tiempo real:
HTML:
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Contador de Usuarios en Línea</title>
<style>
#contador {
font-size: 2em;
color: green;
}
</style>
</head>
<body>
<h1>Personas en línea:</h1>
<div id="contador">0</div>
<script>
function actualizarContador() {
fetch('contador.php') // Asegúrate que es la ruta correcta
.then(response => response.text())
.then(data => {
document.getElementById("contador").innerText = data;
});
}
setInterval(actualizarContador, 5000); // Actualiza cada 5 segundos
actualizarContador(); // Llama inmediatamente para la primera carga
</script>
</body>
</html>
### Resumen
1. Base de Datos: Crea una tabla para guardar las sesiones.
2. PHP para Sesiones: El primer script maneja la adición y eliminación de sesiones.
3. Contador PHP: El segundo script devuelve el número de usuarios conectados.
4. Frontend: Muestra el contador y lo actualiza cada pocos segundos.
Con este sistema, todos los visitantes de tu sitio web serán contados en tiempo real. Si tienes más preguntas o necesitas ayuda adicional, ¡házmelo saber!