<?php
/**
 * One-shot DB fixer:
 * Hatalı kaydedilmiş /admin38/uploads/... URL/path'lerini /uploads/... olarak düzeltir.
 *
 * Kullanım:
 * - CLI:  php database/fix_admin38_image_urls.php
 * - Browser: /database/fix_admin38_image_urls.php  (güvenlik için iş bitince silin)
 */

require_once __DIR__ . '/../config/config.php';

header('Content-Type: text/plain; charset=utf-8');

if (!isset($pdo)) {
    echo "DB bağlantısı yok.\n";
    exit(1);
}

$targets = [
    ['table' => 'company_categories', 'col' => 'icon'],
    ['table' => 'blog_posts', 'col' => 'image'],
    ['table' => 'companies', 'col' => 'logo'],
    ['table' => 'services', 'col' => 'image'],
    ['table' => 'sliders', 'col' => 'image'],
    ['table' => 'company_images', 'col' => 'image_url'],
];

$total = 0;

foreach ($targets as $t) {
    $table = $t['table'];
    $col = $t['col'];

    // Tablo/kolon yoksa pas geç
    try {
        $stmt = $pdo->query("SHOW TABLES LIKE " . $pdo->quote($table));
        if ($stmt->rowCount() === 0) {
            continue;
        }
        $stmt = $pdo->query("SHOW COLUMNS FROM `$table` LIKE " . $pdo->quote($col));
        if ($stmt->rowCount() === 0) {
            continue;
        }
    } catch (PDOException $e) {
        continue;
    }

    $sql = "
        UPDATE `$table`
        SET `$col` = REPLACE(`$col`, '/admin38/uploads/', '/uploads/')
        WHERE `$col` LIKE '%/admin38/uploads/%'
    ";

    try {
        $affected = $pdo->exec($sql);
        $total += (int)$affected;
        echo "$table.$col: $affected satır düzeltildi\n";
    } catch (PDOException $e) {
        echo "$table.$col: HATA - " . $e->getMessage() . "\n";
    }
}

echo "Toplam düzeltme: $total\n";


