"; echo "🔧 Corrector API"; echo ""; echo "

🔧 CORRECTOR AUTOMÁTICO DE RUTAS API

"; // Verificar que existe la carpeta api if (!is_dir('api')) { echo "
❌ CRÍTICO: Carpeta 'api' no encontrada
"; exit; } // Obtener todos los archivos PHP de la API $api_files = glob('api/*.php'); if (empty($api_files)) { echo "
❌ No se encontraron archivos PHP en la API
"; exit; } echo "
✅ Encontrados " . count($api_files) . " archivos para corregir
"; echo "
"; echo "

🔄 CORRIGIENDO ARCHIVOS...

"; $corrections = [ // Ruta incorrecta -> Ruta correcta "require_once 'config/config.php';" => "require_once '../config/config.php';", 'require_once "config/config.php";' => 'require_once "../config/config.php";', "include_once 'config/config.php';" => "include_once '../config/config.php';", 'include_once "config/config.php";' => 'include_once "../config/config.php";', // También corregir rutas a classes si las hay "require_once 'classes/" => "require_once '../classes/", 'require_once "classes/' => 'require_once "../classes/', "include_once 'classes/" => "include_once '../classes/", 'include_once "classes/' => 'include_once "../classes/', // Servicios "require_once 'services/" => "require_once '../services/", 'require_once "services/' => 'require_once "../services/', ]; $total_files = 0; $total_corrections = 0; $errors = []; foreach ($api_files as $file) { $filename = basename($file); $total_files++; echo "
🔄 Procesando: $filename
"; try { // Leer contenido del archivo $content = file_get_contents($file); if ($content === false) { $errors[] = "No se pudo leer: $filename"; continue; } $original_content = $content; $file_corrections = 0; // Aplicar todas las correcciones foreach ($corrections as $wrong => $correct) { $old_content = $content; $content = str_replace($wrong, $correct, $content); if ($content !== $old_content) { $matches = substr_count($old_content, $wrong); $file_corrections += $matches; echo "
✅ $matches corrección(es): '$wrong' → '$correct'
"; } } // Si hubo cambios, guardar el archivo if ($content !== $original_content) { if (file_put_contents($file, $content) === false) { $errors[] = "No se pudo escribir: $filename"; continue; } $total_corrections += $file_corrections; echo "
✅ Archivo guardado: $filename ($file_corrections correcciones)
"; } else { echo "
⚠️ Sin cambios necesarios: $filename
"; } } catch (Exception $e) { $errors[] = "Error procesando $filename: " . $e->getMessage(); } echo "
"; } echo "
"; // Verificación post-corrección echo "
"; echo "

✅ VERIFICACIÓN POST-CORRECCIÓN

"; echo "
📊 Archivos procesados: $total_files
"; echo "
📊 Total correcciones: $total_corrections
"; if (!empty($errors)) { echo "
❌ Errores encontrados:
"; foreach ($errors as $error) { echo "
• $error
"; } } else { echo "
✅ Sin errores durante la corrección
"; } // Verificar que las rutas sean correctas ahora echo "
VERIFICANDO RUTAS CORREGIDAS...
"; $verification_success = true; foreach ($api_files as $file) { $filename = basename($file); $content = file_get_contents($file); // Verificar que no quedan rutas incorrectas if (preg_match('/require_once\s+[\'"]config\/config\.php[\'"]/', $content) || preg_match('/include_once\s+[\'"]config\/config\.php[\'"]/', $content)) { echo "
❌ $filename: Aún tiene rutas incorrectas
"; $verification_success = false; } else { // Verificar que tiene la ruta correcta if (preg_match('/require_once\s+[\'"]\.\.\/config\/config\.php[\'"]/', $content) || preg_match('/include_once\s+[\'"]\.\.\/config\/config\.php[\'"]/', $content)) { echo "
✅ $filename: Ruta corregida correctamente
"; } else { echo "
⚠️ $filename: No se encontró require de config
"; } } } echo "
"; // Test final echo "
"; echo "

🔬 TEST FINAL

"; if ($verification_success && $total_corrections > 0) { echo "
🎉 ¡CORRECCIÓN COMPLETADA CON ÉXITO!
"; echo "
✅ Todas las rutas de la API han sido corregidas
"; echo "
✅ Los archivos ahora buscan '../config/config.php'
"; echo "
SIGUIENTE PASO:
"; echo "
• Prueba cualquier endpoint de la API
"; echo "
• Ejemplo: api/get_system_config.php
"; echo "
• O prueba el login: login.php
"; } elseif ($total_corrections === 0) { echo "
⚠️ No se encontraron correcciones necesarias
"; echo "
Puede que las rutas ya estén correctas o hay otro problema
"; echo "
VERIFICAR:
"; echo "
• Ejecuta: diagnostico_api.php
"; } else { echo "
❌ Corrección incompleta
"; echo "
Hay problemas que requieren revisión manual
"; } echo "
"; echo ""; ?>