# Solución del Error de Conexión Bloqueada

## El Problema

```
Host '192.168.0.9' is blocked because of many connection errors;
unblock with 'mariadb-admin flush-hosts'
```

Esto ocurre cuando MariaDB detecta múltiples intentos de conexión fallidos desde una IP y la bloquea automáticamente como medida de seguridad.

## ¿Por qué sucede?

1. **Credenciales incorrectas** - Usuario o contraseña erróneos
2. **IP bloqueada** - Demasiados intentos de conexión fallidos
3. **Puerto incorrecto** - El servidor no escucha en el puerto esperado
4. **Firewall** - Bloquea la conexión
5. **Usuario sin permisos** - El usuario no tiene privilegios de acceso remoto

## ✅ Soluciones Implementadas

### 1. **Usar localhost en lugar de IP**

Los archivos ya están actualizados para usar `localhost` (127.0.0.1) en lugar de la IP `192.168.0.9`.

Esto es más seguro y rápido cuando accedes desde el mismo servidor.

**Archivos actualizados:**

- ✅ `procesar_formulario.php`
- ✅ `debug.php`
- ✅ `config.php` (ya usaba localhost)

### 2. **Desbloquear la IP (una sola vez)**

Si necesitas conectar desde otra máquina con la IP 192.168.0.9, ejecuta en el servidor MariaDB:

```bash
mariadb-admin flush-hosts -u root -pTykun.2026
```

O accede a MariaDB y ejecuta:

```sql
FLUSH HOSTS;
```

### 3. **Crear usuario específico para conexiones remotas (opcional)**

Para permitir conexiones desde otras IPs:

```sql
CREATE USER 'bot'@'192.168.0.%' IDENTIFIED BY 'Tykun.2026';
GRANT ALL PRIVILEGES ON tykun.* TO 'bot'@'192.168.0.%';
FLUSH PRIVILEGES;
```

## 📋 Pasos a Seguir

### Opción A: Usar localhost (Recomendado para desarrollo)

1. Ya está configurado ✅
2. Prueba el formulario
3. Si hay error, ve al debug: `http://localhost/tykun/debug.php`

### Opción B: Usar IP remota

1. En tu servidor MariaDB, ejecuta:

   ```bash
   mariadb-admin flush-hosts -u root -pTykun.2026
   ```

2. Actualiza los archivos para usar la IP:
   ```php
   // En procesar_formulario.php y otros
   $conexion = new mysqli("192.168.0.9", "bot", "Tykun.2026", "tykun");
   ```

## 🔧 Verificar Configuración

1. **Abre**: `http://localhost/tykun/debug.php`

Deberías ver:

- ✅ Conexión exitosa a la base de datos
- ✅ La tabla 'forms' existe
- ✅ Estructura de la tabla
- ✅ Últimos registros guardados

## 📊 Variables de Conexión en config.php

```php
define('DB_SERVER', 'localhost');           // Usar localhost
define('DB_SERVER_USERNAME', 'root');       // Usuario
define('DB_SERVER_PASSWORD', 'Tykun.2026'); // Contraseña
define('DB_DATABASE', 'tykun');             // Base de datos
```

## ⚠️ Notas Importantes

- **Para desarrollo local**: Usa `localhost` (más rápido y seguro)
- **Para acceso remoto**: Necesitarás desbloquear la IP una sola vez
- **No uses contraseñas en el código**: En producción, usa variables de entorno
- **Contraseña fuerte**: Cambia la contraseña regularmente

## 🚀 Próximos Pasos

1. Prueba el debug: `http://localhost/tykun/debug.php`
2. Si todo funciona, prueba el formulario: `http://localhost/tykun/form.php`
3. Los datos deberían guardarse en la tabla `forms`

¿Necesitas ayuda? Revisa el archivo `debug.php` para ver el estado actual de la conexión.
