26.08.2010, 15:19
|
|
Пионэр
|
|
Регистрация: 16.11.2009
Сообщений: 1,322
|
|
Подразумевается PHP.
Есть класс DOMDocument, которые позволяет разбирать XML как DOM. Самое вкусное — XPath, но можно работать и с такими известными методами и свойствами, как getElementsByTagName , parentNode , childNodes и многие другие.
Подробнее, как всегда, в мануалах: http://ru2.php.net/manual/en/class.domdocument.php
Маленький пример:
<export>
<item name="Мясо" price="105.95" available="1"></item>
<item name="Рыба" price="47.95" available="1"></item>
<item name="Молоко" price="37.95" available="0"></item>
</export>
$document = new DOMDocument();
$document->load("export.xml");
$xpath = new DOMXPath($document);
foreach ($xpath->query("/*/item[@available=1]") as $node){
echo $node->getAttribute("name") . ": " . $node->getAttribute("price") . " руб.<br />";
}
|
|
26.08.2010, 17:29
|
|
Интернет-турист
|
|
Регистрация: 01.08.2008
Сообщений: 516
|
|
subzey,
Огромное спасибо за описание! (я обычно пользовался SimpleXML)
А из access в XML как перегоняли, стандартными средствами (Файл -> Экспорт -> тип файлов xml)?
|
|
26.08.2010, 17:58
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Мне нужны две разные бд, чтобы я потом из одной бд в другую бд перегонял. Звучит как глупая хохма.
Берется стандартная MySQL и ставится к ней интерфейс (CMS), здесь выбор очень большой. Затем набивальщицы набивают, а администратор делает дамп и пихает на сайт.
greatilya,
Вы придумали себе проблему и пытаетесь её решить, невзирая на то, что проблемы такой нет.
|
|
27.08.2010, 00:06
|
|
Матрос
|
|
Регистрация: 04.04.2008
Сообщений: 6,246
|
|
Сообщение от subzey
|
foreach ($xpath->query("/*/item[@available=1]") as $node){
|
Оп-п-п-па
так разве можно?коллекции перебирать-то?
на досуге проверю.
я просто всегда делал через $elems->length И $elems->item($i)
|
|
27.08.2010, 04:28
|
|
Интернет-турист
|
|
Регистрация: 01.08.2008
Сообщений: 516
|
|
Gozar,
Опять вы с критикой.
Поясню более подробно.
Сейчас имеется действующий сайт на котором более 200 000 запчастей. И в силу того что на сайте стоит CMS NetCat и реляционные связи в таблицах не такие простые, управлять эти сайтом средствами CMS стало неудобно. Тем более что необходим стабильный доступ в интернет, при том что забивка каталога занимает очень много времени. Я хоть и старался сделать систему более удобной, выжал максимум из NetCat, добавил Ajax и т.п. Но управлять всё-равно тяжеловато.
Вот и было решение сделать локальный интерфейс для забивки БД с последующим экспортом на сайт. Думаю средствами Access получится сделать более удобный интерфейс.
Можно было бы конечно подключаться из некого локального интерфейса к БД на сайте, но от этого потеряется скорость.
|
|
27.08.2010, 09:06
|
Новичок
|
|
Регистрация: 03.08.2010
Сообщений: 230
|
|
greatilya,
Может быть локальную копию базы держать на внутреннем серваке? Тогда проблем с доступом через инет и скоростью не будет. А удобный интерфейс к ней, я уверен, Вы напишете?
|
|
27.08.2010, 09:19
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Сообщение от greatilya
|
Gozar,
Опять вы с критикой.
Поясню более подробно.
Сейчас имеется действующий сайт на котором более 200 000 запчастей. И в силу того что на сайте стоит CMS NetCat и реляционные связи в таблицах не такие простые, управлять эти сайтом средствами CMS стало неудобно. Тем более что необходим стабильный доступ в интернет, при том что забивка каталога занимает очень много времени. Я хоть и старался сделать систему более удобной, выжал максимум из NetCat, добавил Ajax и т.п. Но управлять всё-равно тяжеловато.
Вот и было решение сделать локальный интерфейс для забивки БД с последующим экспортом на сайт. Думаю средствами Access получится сделать более удобный интерфейс.
Можно было бы конечно подключаться из некого локального интерфейса к БД на сайте, но от этого потеряется скорость.
|
Мне не нужно пояснять более подробно, если вы выбрали плохо продуманную CMS, это ещё не значит что БД плохая. Смените CMS или напишите свой интерфейс.
Вы по всей вероятности этого просто не можете или вам за это не заплатят?
Вы в данном случае не БД обсуждаете, а интерфейс к ней. На том уровне что вы указали умеют работать ВСЕ существующие БД. 200 000 это смешно.
|
|
27.08.2010, 12:19
|
|
Интернет-турист
|
|
Регистрация: 01.08.2008
Сообщений: 516
|
|
Сообщение от Gozar
|
выбрали плохо продуманную CMS
|
CMS продуманная
Сообщение от Gozar
|
напишите свой интерфейс
|
он там есть, причем выжимал по максимуму. Для пользователя выбор нужной детали был проблематичным. Вероятно вы правы, что легче придумать, написать интерфейс.
Со всем уважением к вам, задача там далеко не тривиальная...
Попробую придумать отдельный интерфейс средствами веба...
|
|
27.08.2010, 12:37
|
|
Пионэр
|
|
Регистрация: 16.11.2009
Сообщений: 1,322
|
|
Gvozd,
ага. Там итератор определен.
|
|
28.08.2010, 12:11
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
предел удобства универсального решения (CMS, MS Access) при условиях стремящимся к благоприятным, равен удобству специализированного решения
Сообщение от greatilya
|
Но управлять всё-равно тяжеловато.
|
а в чем конкретно сложности?
Сообщение от greatilya
|
Для пользователя выбор нужной детали был проблематичным.
|
autocomplete проблему не решает?
|
|
|
|