X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Редактирование файлов XML, Посредством PHP
matroskin8
matroskin8
Topic Starter сообщение 19.8.2010, 11:33; Ответить: matroskin8
Сообщение #1


Сори, что пишу сюда - не набрал еще лимита сообщений на тему ;)
Возникла задача сделать подобие админки, через которую можно было бы управлять файлами .xml. Объясню подробнее. Файл .xml отвечает за управление флеш-галереей и имеет примерно такой вид:
<?xml version="1.0" encoding="utf-8"?>
<photos>
    <photo> <!-- Фото 1 -->
        <thumbnail>small_1.jpg</thumbnail>
        <filename>big_1.jpg</filename>
        <title>Photo 1</title>
        <description>Описание фото 1</description>
    </photo>
    <photo> <!-- Фото 2 -->
        <thumbnail>small_2.jpg</thumbnail>
        <filename>big_2.jpg</filename>
        <title>Photo 2</title>
        <description>Описание фото 2</description>
    </photo>
     .....
</photos>

Т.е., блок одного фото состоит из 4-х пунктов - превью, фото, название, описание. Собственно интересует как можно управлять каждым конкретным блоком (редактировать, добавлять новый, удалять существующий), т.е., содержимым, находящимся внутри тэгов <photo></photo>.
Буду признателен за любую помощь по данному вопросу.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 19.8.2010, 12:17; Ответить: ZiTosS
Сообщение #2


matroskin8, Подобных универсальных решений в интернете не видел. У вас есть 3 варианта:

1) Поставить себе на сервер в админку файловый менеджер с редактором написанные на PHP, с помощью них править файлы XML ручками.
2) На основе одной из библиотек работы с XML в PHP, например simpleXML написать скрипт для редактирования ваших фотографий, это будет кустарный метод, но действенный... Чуть-чуть поменялась структура и метод уже не работает.
3) Опять же на основе одной из либ написать универсальный класс для редактирования XML, задача очень рутинная и тяжелая. Есть над чем поразмыслить и порешать кучу задач с подводными камнями. Но это того стоит. Тут придётся написать даже 2 класса, один редактирует XML по запросу, типа данные нужно поменять в том-то теге или изменить тот-то параметр, а второй класс должен описывать интерфейс пользователя, который и будет обращаться к первому классу.

Самый простой, кустарный метод... Структура известна, так что же не подумать над реализацией.
Поиск и замена в PHP присутствуют, так же в наличии регулярные выражения, всё реализуемо, стоит только голову поломать.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
gaaarfild
gaaarfild
сообщение 19.8.2010, 12:23; Ответить: gaaarfild
Сообщение #3


Я пока только вижу такой путь. Читать все содержимое файла с помощью SimpleXML, и потом перезаписывать его заново, с измененными данными. Либо, использовать preg_replace.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 19.8.2010, 12:33; Ответить: ZiTosS
Сообщение #4


matroskin8, почитал свою муть и понял, ведь simpleXML и DOMDocument уже предоставляют универсальные решения для редактирования.
Вот пример редактирования XML на основе DOMDocument
Вам остается только разработать интерфейс, с помощью которого вы будете редактировать элементы. С помощью этих либ можно доступиться к любому элементу и параметру в XML ;)

P.s.: Не забываем проверить наличие данных библиотек на вашем сервере.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
matroskin8
matroskin8
Topic Starter сообщение 19.8.2010, 12:53; Ответить: matroskin8
Сообщение #5


Вроде simpleXML должно помочь.
Спасибо - буду разбираться ;)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
matroskin8
matroskin8
Topic Starter сообщение 19.8.2010, 18:40; Ответить: matroskin8
Сообщение #6


Еще раз благодарю за подсказку в решении вопроса. Возможности simpleXML позволяют легко парсить .xml, используя их можно довольно легко получить массив из элементов и их параметров. А используя DOMDocument возможно уже и редактировать сам файл - не очень хорошо только то, что приходится полностью перезаписывать сам файл. Просьба пока не закрывать тему - возможно возникнут еще вопросы ;)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 20.8.2010, 13:10; Ответить: ZiTosS
Сообщение #7


matroskin8, simpleXML так же позволяет редактировать файлы:
http://stackoverflow.com/questions/2092172...-with-simplexml
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
matroskin8
matroskin8
Topic Starter сообщение 20.8.2010, 15:35; Ответить: matroskin8
Сообщение #8


Спс, увидел... но мне уже проще так, как я делаю, тем более, что уже, в общем-то, все почти сделал ;)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
matroskin8
matroskin8
Topic Starter сообщение 25.8.2010, 17:48; Ответить: matroskin8
Сообщение #9


Всем спасибо за участие и помощь - админка готова, дополнительных вопросов не возникло ;) Тему можно закрывать.

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Нужен сайт с автонаполнением по XML
1 REGNET 1245 7.3.2024, 15:08
автор: REGNET
Открытая тема (нет новых ответов) RTB/XML Партнерская сеть Trafficstore.pro
0 trafficstore2x2 1574 26.3.2021, 15:44
автор: trafficstore2x2
Открытая тема (нет новых ответов) RTB/XML Партнерская сеть Trafficstore.pro
0 trafficstore2x2 1017 23.3.2021, 18:53
автор: trafficstore2x2
Открытая тема (нет новых ответов) Zel.Biz - CPA/CPI партнерка и Push-сеть (XML JSON feed)
0 zelads1 886 27.12.2020, 17:05
автор: zelads1
Открытая тема (нет новых ответов) Zel.Biz - Push/CPA/CPI рекламная сеть (XML JSON feed)
0 Zelads 1694 14.10.2020, 13:22
автор: Zelads


 



RSS Текстовая версия Сейчас: 24.4.2024, 5:38
Дизайн