getConnection(); echo "
Добавляем основные категории...
"; $db->exec(" INSERT INTO categories (name, slug, description, is_active) VALUES ('Диваны', 'divany', 'Мягкая мебель для гостиной', TRUE), ('Кресла', 'kresla', 'Кресла для гостиной и офиса', TRUE), ('Кровати', 'krovati', 'Мебель для спальни', TRUE), ('Столы', 'stoly', 'Обеденные и рабочие столы', TRUE), ('Стулья', 'stulya', 'Стулья для кухни и офиса', TRUE) "); echo "✓ Категории добавлены
"; } // 3. Исправляем товары с category_id = 0 или NULL $badProducts = $db->query(" SELECT COUNT(*) FROM products WHERE category_id IS NULL OR category_id = 0 OR category_id NOT IN (SELECT category_id FROM categories) ")->fetchColumn(); if ($badProducts > 0) { echo "Исправляем товары с некорректными категориями ($badProducts шт)...
"; // Получаем первую категорию $firstCat = $db->query("SELECT category_id FROM categories LIMIT 1")->fetchColumn(); if ($firstCat) { $db->exec(" UPDATE products SET category_id = $firstCat WHERE category_id IS NULL OR category_id = 0 OR category_id NOT IN (SELECT category_id FROM categories) "); echo "✓ Товары исправлены (category_id установлен в $firstCat)
"; } } // 4. Показываем текущее состояние echo "| ID | Название |
|---|---|
| {$cat['category_id']} | {$cat['name']} |
✓ База данных исправлена!
"; } catch (PDOException $e) { echo "Ошибка: " . $e->getMessage() . "
"; } ?>