Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Запитання від новачка


Dmytro2

Recommended Posts

Привіт усім

Мені людина дала файл yml_catalog.xml
Мені треба завантажити товар на свій сайт. Я сам пишу модуль для цього.

Але погуглівши назву "yml_catalog.xml" я потрапив на цей форум.
Скажіть це якийсь стандартний файл?

Є якийсь сфот, найпростіший на php, щоб залити дані з yml_catalog.xml у базу mysql?

А далі я вже працюватиму з базою?

Надіслати
Поділитися на інших сайтах


В 26.08.2024 в 21:12, Dmytro2 сказав:

Скажіть це якийсь стандартний файл?

Ви б відкрили файл і подивилися, чи може він бути стандартним.

В 26.08.2024 в 21:12, Dmytro2 сказав:

Є якийсь сфот, найпростіший на php, щоб залити дані з yml_catalog.xml у базу mysql?

 

Не найпростіший, але є декілька модулів, які можуть обробляти подібні формати і завантажувати та оновлювати товари

Надіслати
Поділитися на інших сайтах

Якщо вам потрібно завантажити товари с файла формата xml 

То вам допоможе ці 2 модуля  або 

 

 

Обирайте який для вас зручніше буде

  • +1 1
Надіслати
Поділитися на інших сайтах


Приклад скрипту на PHP для імпорту yml_catalog.xml в MySQL

 

<?php

// Параметри підключення до бази даних
$host = 'localhost';
$db   = 'назва_вашої_бази';
$user = 'користувач';
$pass = 'пароль';
$charset = 'utf8mb4';

// Налаштування DSN (Data Source Name)
$dsn = "mysql:host=$host;dbname=$db;charset=$charset";
$options = [
    PDO::ATTR_ERRMODE            => PDO::ERRMODE_EXCEPTION,
    PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
    PDO::ATTR_EMULATE_PREPARES   => false,
];

try {
    // Підключення до бази даних
    $pdo = new PDO($dsn, $user, $pass, $options);
} catch (\PDOException $e) {
    throw new \PDOException($e->getMessage(), (int)$e->getCode());
}

// Завантаження та парсинг XML файлу
$xml = simplexml_load_file('yml_catalog.xml');

// Перебір всіх товарів у файлі
foreach ($xml->shop->offers->offer as $offer) {
    // Отримання даних про товар
    $id = (string) $offer['id'];
    $name = (string) $offer->name;
    $price = (float) $offer->price;
    $currency = (string) $offer->currencyId;
    $category = (int) $offer->categoryId;
    $description = (string) $offer->description;
    
    // SQL-запит для вставки даних у базу
    $sql = "INSERT INTO products (id, name, price, currency, category_id, description) VALUES (?, ?, ?, ?, ?, ?)";
    $stmt= $pdo->prepare($sql);
    $stmt->execute([$id, $name, $price, $currency, $category, $description]);
}

echo "Імпорт завершено успішно!";
?>
 

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.