0 Пользователей и 1 Гость просматривают эту тему.
  • 8 Ответов
  • 741 Просмотров
*

ninth

  • Осваиваюсь на форуме
  • 59
  • 0
  • [ 9 ]
выгрузка данных в XML
« : 05.02.2016, 11:37:11 »
Доброго времени суток.

Есть простенький компонент (галерея картинок), в общем ничего сложного.
Хотелось бы в самом компоненте добавить кнопку "Экспорт в XML" и сохранять данные этой галереи в файл.
Например, название и путь к картинке (для Flash).
Сталкивался кто с подобным?
...когда на землю опускается ночь, кто-то должен не спать...
*

effrit

  • Группа развития
  • 7583
  • 822
  • effrit.com
Re: выгрузка данных в XML
« Ответ #1 : 05.02.2016, 13:28:31 »
добрый.
я сегодня скачал корявый компонентик карты сайта.
так вон он как раз должен это делать - там одна кнопка с выгрузкой в XML
компонент кривой и толком не работает, выдавая пустой файл, но вам посмотреть, как оно устроено, думаю, хватит )
"sitemap faster" называется. JED
*

Aleks.Denezh

  • Практически профи
  • 2806
  • 377
Re: выгрузка данных в XML
« Ответ #2 : 05.02.2016, 15:02:33 »
не пойму в чем проблема? Повесить одну кнопку в вьюхе, указать task
в контроллере нужном отловить таск получить данные, сформировать XML и отдать юзеру.. простейшая задача.. делается максимум 20 минут..
Мой  блог по разработке на Joomla CMS!
Хотите отблагодарить материально? Мой WMR: R861060179016
*

ninth

  • Осваиваюсь на форуме
  • 59
  • 0
  • [ 9 ]
Re: выгрузка данных в XML
« Ответ #3 : 05.02.2016, 20:28:20 »
Ну всё относительно легко по мере прибавления опыта )))
Создание кнопки - JToolBarHelper::custom('task', 'list', '', 'Экспорт в XML');
А вот дальнейшее пока от меня ускользает(
« Последнее редактирование: 05.02.2016, 20:53:09 от ninth »
...когда на землю опускается ночь, кто-то должен не спать...
*

Aleks.Denezh

  • Практически профи
  • 2806
  • 377
Re: выгрузка данных в XML
« Ответ #4 : 06.02.2016, 03:00:43 »
Ускользает вижу все ))

JToolbarHelper::custom( 'controller_name.exportXML', 'download', 'download', 'Экспорт в XML', false );
где:
controller_name.exportXML
controller_name -> имя контроллера в папке controllers
exportXML - в классе этого контроллера из папки controllers создаете метод
public function exportXML(){ echo ''test task; }
 'download', 'download' - 1-е значение вроде иконка текущая а второе то ли при клике толи при наведении
 'Экспорт в XML' - метка
false - должны ли для срабатывания кнопки быть задействованы чекбоксы!

А дальше вам в методе вашем сформировать XML  и отдать юзеру!
Мой  блог по разработке на Joomla CMS!
Хотите отблагодарить материально? Мой WMR: R861060179016
*

robert

  • Профи
  • 4078
  • 376
Re: выгрузка данных в XML
« Ответ #5 : 06.02.2016, 03:22:21 »
:)
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.
*

ninth

  • Осваиваюсь на форуме
  • 59
  • 0
  • [ 9 ]
Re: выгрузка данных в XML
« Ответ #6 : 06.02.2016, 17:57:56 »
Istaan, спасибо.

Да, вроде всё получается... только вот опять чего-то неправильно понимаю.

Контролер:
Код: php
class MyworksControllerExportxml extends JControllerAdmin
{
public function controllexportXML()
{
$model = $this->getModel('exportxml');

if ($model->modelexportXML()) {
$msg = JText::_( 'Успех' );
}
else
{
$msg = $model->getError();
}

$this->setRedirect(JRoute::_( 'index.php?option=com_myworks' ), $msg);
}
}
Сообщение не выводит никакого...

Модель:
Код: php
class MyworksModelExportxml extends JModelList
{
public function modelexportXML(){

$db = $this->getDbo();
$query = $db->getQuery(true);

$query->select(array('name', 'id'));
$query->from('#__myworks');

$query->where('state = '.(int)1);

$db->setQuery($query);
$query = $db->loadObjectlist();

$dom = new domDocument("1.0", "utf-8");
$root = $dom->createElement("myworks");
$dom->appendChild($root);

foreach($query as $myworks) {
$work = $dom->createElement("work", $myworks->name);
$work->setAttribute("id", $myworks->id);
$work->setAttribute("name", $myworks->name);
$root->appendChild($work);
}

$dom->save($_SERVER['DOCUMENT_ROOT']."/media/com_myworks/myworksFlash.xml");
}
}
Ругается - $myworks->name, Не нравится что в названии есть "&". Хотя в атрибут выводит без ошибок, на как "&"
« Последнее редактирование: 06.02.2016, 18:04:43 от ninth »
...когда на землю опускается ночь, кто-то должен не спать...
*

Aleks.Denezh

  • Практически профи
  • 2806
  • 377
Re: выгрузка данных в XML
« Ответ #7 : 06.02.2016, 19:20:11 »
Конечно не выведет сообщение!
У вас идет:
if ($model->modelexportXML()) {   $msg = JText::_( 'Успех' );   }
else{   $msg = $model->getError();   }
Смотрим в модель в метод modelexportXML()
что у вас возвращает метод? правильно! Ничего не возвращает )
а в PHP false равно 0 и равно пустой строке! то есть ваше условие возвращает ничего, а ничего это false и у вас  ошибку пытается получить в elsr $msg = $model->getError()!
Но вы же в модели никакой ошибки не устанваливали ?) значит и сообщения не будет )
Мой  блог по разработке на Joomla CMS!
Хотите отблагодарить материально? Мой WMR: R861060179016
*

ninth

  • Осваиваюсь на форуме
  • 59
  • 0
  • [ 9 ]
Re: выгрузка данных в XML
« Ответ #8 : 07.02.2016, 14:04:47 »
Istaan, спасибо всё получилось.
Разобрался )
...когда на землю опускается ночь, кто-то должен не спать...
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Стоит ли создавать отдельный запрос к базе данных?

Автор borro

Ответов: 4
Просмотров: 118
Последний ответ 10.07.2017, 13:03:03
от b2z
Вывод данных из MySQL на сайт

Автор Frics

Ответов: 5
Просмотров: 202
Последний ответ 20.06.2017, 13:21:49
от Septdir
Запрос на обновление данных

Автор web3.0

Ответов: 0
Просмотров: 137
Последний ответ 30.04.2017, 21:30:12
от web3.0
PHP скрипт для автоматической очистки таблиц в Базе Данных MySQL

Автор LovelyHost

Ответов: 46
Просмотров: 1048
Последний ответ 17.12.2016, 14:32:28
от vipiusss
обновить данные в базе данных через интервал времени

Автор кодик

Ответов: 37
Просмотров: 852
Последний ответ 06.12.2015, 13:41:18
от кодик