COMPLEMENTOS Detectar Cuentas Duplicadas v1.0 - Versión para impresión
+- Phpost (
https://phpost.es)
+-- Foro: Risus Nova 2.0 (
https://phpost.es/forum-150.html)
+--- Foro: Complementos (
https://phpost.es/forum-164.html)
+---- Foro: Terminados (
https://phpost.es/forum-165.html)
+---- Tema:
COMPLEMENTOS Detectar Cuentas Duplicadas v1.0 (
/thread-1002.html)
Detectar Cuentas Duplicadas v1.0 -
Tronlar - 05-29-2026
Detectar Cuentas Duplicadas v1.0
Nuevo módulo para Risus Nova 2.0 — PHPost
Capturas
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
Detecta automáticamente cuando alguien se registra desde una IP ya usada por otra cuenta y notifica al admin. Panel en el admin para ver todas las IPs con múltiples cuentas.
🕵️ Características
- Notificación automática al admin cuando se detecta IP duplicada
- Panel en /admin/duplicados con lista de IPs sospechosas
- Muestra todas las cuentas de cada IP con estado, posts y puntos
- Enlace directo a GeoIP para ver la ubicación de la IP
- Enlace para editar cada usuario directamente
📋 Requisitos
- Risus Nova 2.0 instalado y funcionando
- PHP 8.0+
- MySQL 5.7+
🛠️ Instalación
Paso 1 — Ejecutar el instalador
Sube la carpeta install/ a la raíz y accede a:
Código:
Registrate o inicia tu sesión para ver este contenido
⚠️ Elimina la carpeta install/ cuando termine.
Paso 2 — Subir los archivos
Código:
inc/class/c.duplicados.php
→ inc/class/
themes/default/templates/admin_mods/m.admin_duplicados.tpl
→ themes/default/templates/admin_mods/
Paso 3 — En c.registro.php
Buscar:
Código:
$tsData['user_id'] = db_exec('insert_id');
Debajo agregar:
Código:
// ── Detectar cuentas duplicadas ──
require_once TS_CLASS . 'c.duplicados.php';
$tsIpReg = !empty($_SERVER['HTTP_X_FORWARDED_FOR'])
? trim(explode(',', $_SERVER['HTTP_X_FORWARDED_FOR'])[0])
: ($_SERVER['REMOTE_ADDR'] ?? '0.0.0.0');
(new tsDuplicados())->comprobarRegistro($tsData['user_id'], $tsIpReg);
// ─────────────────────────────────
Paso 4 — En admin.php
Buscar:
Código:
} elseif($action == 'feed'){
Arriba agregar:
Código:
} elseif($action == 'duplicados'){
require_once TS_CLASS . 'c.duplicados.php';
$tsD = new tsDuplicados();
$pagina = max(1, (int)($_GET['page'] ?? 1));
$smarty->assign('tsDuplicados', $tsD->getDuplicados($pagina));
Paso 5 — Añadir en t.admin.tpl
Buscar:
Código:
{elseif $tsAction == 'rangos'}
{include file='admin_mods/m.admin_rangos.tpl'}
Cambiar por:
Código:
{elseif $tsAction == 'rangos'}
{include file='admin_mods/m.admin_rangos.tpl'}
{elseif $tsAction == 'duplicados'}
{include file='admin_mods/m.admin_duplicados.tpl'}
Paso 6 — En m.admin_sidemenu.tpl poner esto donde quieran:
Código:
<li><a href="{$tsConfig.url}/admin/duplicados"><i class="fa-solid fa-user-secret"></i> Cuentas duplicadas</a></li>
Paso 7 — Borrar la caché
Borra el contenido de la carpeta /cache/ del sitio.
🗑️ Desinstalar
Código:
ALTER TABLE u_miembros DROP COLUMN user_reg_ip;
Elimina los archivos y quita los hooks añadidos.