Стефан
Помогите пожалуйста, реализовать функцию, аргумент получает xml файл, нужно читать этот файл и добавить в существующую базу данных.
Код (Text):
<?xml version=»1.0″ encoding=»UTF-8″?> <Товары> <Товар Код=»201″ Название=»Бумага А4″> <Цена Тип=»Базовая»>11.50</Цена> <Цена Тип=»Москва»>12.50</Цена> <Свойства> <Плотность>100</Плотность> <Белизна ЕдИзм=»%»>150</Белизна> </Свойства> <Разделы> <Раздел>Бумага</Раздел> </Разделы> </Товар> <Товар Код=»202″ Название=»Бумага А3″> <Цена Тип=»Базовая»>18.50</Цена> <Цена Тип=»Москва»>22.50</Цена> <Свойства> <Плотность>90</Плотность> <Белизна ЕдИзм=»%»>100</Белизна> </Свойства> <Разделы> <Раздел>Бумага</Раздел> </Разделы> </Товар> <Товар Код=»302″ Название=»Принтер Canon»> <Цена Тип=»Базовая»>3010</Цена> <Цена Тип=»Москва»>3500</Цена> <Свойства> <Формат>A4</Формат> <Формат>A3</Формат> <Тип>Лазерный</Тип> </Свойства> <Разделы> <Раздел>Принтеры</Раздел> <Раздел>МФУ</Раздел> </Разделы> </Товар> <Товар Код=»305″ Название=»Принтер HP»> <Цена Тип=»Базовая»>3310</Цена> <Цена Тип=»Москва»>2999</Цена> <Свойства> <Формат>A3</Формат> <Тип>Лазерный</Тип> </Свойства> <Разделы> <Раздел>Принтеры</Раздел> <Раздел>МФУ</Раздел> </Разделы> </Товар> </Товары>
ADSoft
Парсить XML, заносить в бд
Стефан
Ну это понятно. просто я пару дней только изучаю сервер и т п. и понятии не имею как сделается. как пробовал никак не получается, пробовал через simple_load_file() но не могу связать c mysql.
ADSoft
Выбор всегда за вами…
— потратить энное количество времени и сил для освоения новых знаний и применить их для решения задачи
— потратить энное количество денег — получить решение задачи
— забить на все, и не тратить свои и наши нервы….
Стефан
Я трачу ЭННОЕ количество времени и сил для решения задач, я от Вас не прошу ни код или решение данной задачи, и не вынуждаю никого тратить свои энное количество нервов, просто надеялся понимания и чуть совета.
lastdays
Тебе уже дали совет, потратить время и изучить это и/или бабла и времени. Решай дальше сам. Хз, каких ты ещё советов тут ищешь.
Подобные модули аля для опенкарта тысячи за 3 отдают кажись.
ADSoft
Мы поняли, советы дали…
Или спрашивайте конкретные вещи с конкретными вашим кодом и получайте конкретные ответы….
Либо получайте общие ответы на общие вопросы….Как говорил Слепаков в одном КВН, «Задавай глупые вопросы — получай глупые ответы»
Стефан
Вот код, почему не добавляются товары????
<?php
$mysqli = mysqli_connect(‘127.0.0.1:3306’, ‘mysql’, ‘mysql’, ‘test_samson’);if ($mysqli->connect_error) {
die(‘Ошибка подключения (‘ . $mysqli->connect_errno . ‘) ‘
. $mysqli->connect_error);
}if (mysqli_connect_error()) {
die(‘Ошибка подключения (‘ . mysqli_connect_errno() . ‘) ‘
. mysqli_connect_error());
}echo ‘Соединение установлено… ‘;
$xml = simplexml_load_file(‘test.xml’);
if (mysqli_query($mysqli,»CREATETABLE b_product (
Код int(30) NOTNULL,
Название text(255) NOTNULL,
Цена int(30) NOTNULL,
Тип text(255) NOTNULL,
Плотность text(255) NOTNULL,
Белизна text(255) NOTNULL,
ЕдИзм text(255) NOTNULL,
Формат text(255) NOTNULL,
Раздел text(255) NOTNULL
)») === true){
printf(«Таблица Product успешно создана.n»);
};
foreach ($xml->Товар as $products) {
$code = $products->attributes()[‘Код’];
$name = $products->attributes()[‘Название’];
$price = $products->attributes()[‘Цена’];
$type = $products->attributes()[‘Тип’];
$density =$products->attributes()[‘Плотность’];
$white = $products->attributes()[‘Белизна’];
$unit = $products->attributes()[‘ЕдИзм’];
$format = $products->attributes()[‘Формат’];
$section = $products->attributes()[‘Раздел’];
$sql = «INSERTINTO `b_product` (`Код`, `Название`, `Цена`, `Тип`, `Плотность`, `Белизна`, `ЕдИзм`, `Формат`, `Раздел`)
VALUES (‘$code’, ‘$name’, ‘$price’, ‘$type’, ‘$density’, ‘$white’, ‘$unit’, ‘$format’, ‘$section’)»;
if (mysqli_query($mysqli,$sql)) {
echo «Pегистрация продукта прошла успешно.n»;
} else {
mysqli_error($mysqli);
}
}
$mysqli->close();
?>