Новости Joomla

Компонент View logs v.2.2.0

👩‍💻 Компонент View logs v.2.2.0.По горячим следам, рекомендациям и просьбам Joomla-сообщества компонент просмотра логов Joomla получил следующую версиюv.2.2.0. Что нового?- Обновление интерфейса: список логов сделан в виде таблицы, отображение дополнительной информации в списке файлов (время создания и последнего изменения, кнопки действий и их порядок) изменены и сделаны менее пёстрыми.- Добавлен поиск-фильтр по имени файла лога на странице. Находите нужный файл быстрее.- Большие файлы. Просмотр файла лога в модальном окне сохранён для файлов менее 1МБ. Возможность открыть файл в отдельном окне сохранена. Но используйте эту функцию с осторожностью: файлы объёмом 8-10мб ещё возможно открывать в браузере, но более крупные - не рекомендуется. Системные требования:- Совместимость с Joomla 6 и PHP 8.4.- Минимальная версия PHP по-прежнему 8.0.Страница расширенияGitHub расширения@joomlafeed#joomla #расширения

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

kav

  • Захожу иногда
  • 121
  • 0 / 0
XML парсинг
« : 30.08.2014, 22:52:29 »
привет,

есть файл menu.xml
Цитировать
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="http://rosenergo/index.php?option=com_xmap&amp;view=xml&amp;layout=xsl&amp;tmpl=component&amp;id=1&amp;filter_showtitle=1&amp;filter_showexcluded="?>
<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

<url>
<loc>http://rosenergo/</loc>
<title><![CDATA[Главная]]></title>
<uid>itemid101</uid>
<itemid>101</itemid>
<changefreq>daily</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>http://rosenergo/index.php/about-company</loc>
<title><![CDATA[Про компанию]]></title>
<uid>itemid108</uid>
<itemid>108</itemid>
<changefreq>daily</changefreq>
<priority>0.5</priority>
</url>

</urlset>

я не могу использовать
Цитировать
$mymenu = simplexml_load_file("http://rosenergo/menu.xml");
есть только
Цитировать
$mymenu = file("http://rosenergo/menu.xml");

как следствие, я не могу использовать
Цитировать
$mymenu->url[0]->loc

как мне получить на выходе
Цитировать
<a href="http://rosenergo">Главная</a>
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: XML парсинг
« Ответ #1 : 30.08.2014, 23:25:00 »
забавный способ парсинга xml). Функция file вроде как в массив собирает строки. Ну так соберите обратно в строку и распарсите ее как xml:
Код: php
$str = implode('', $mymenu);
$xml = simplexml_load_string($str);
...
Что вам мешает сделать так?
интернет-блог: http://websiteprog.ru
*

kav

  • Захожу иногда
  • 121
  • 0 / 0
Re: XML парсинг
« Ответ #2 : 30.08.2014, 23:27:28 »
забавный способ парсинга xml). Функция file вроде как в массив собирает строки. Ну так соберите обратно в строку и распарсите ее как xml:
Код: php
$str = implode('', $mymenu);
$xml = simplexml_load_string($str);
...
Что вам мешает сделать так?
отсутствие simplexml
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: XML парсинг
« Ответ #3 : 30.08.2014, 23:28:23 »
используйте DOMDocument, он встроен в php.
« Последнее редактирование: 30.08.2014, 23:33:33 от zomby6888 »
интернет-блог: http://websiteprog.ru
*

kav

  • Захожу иногда
  • 121
  • 0 / 0
Re: XML парсинг
« Ответ #4 : 30.08.2014, 23:30:33 »
используйте DOMDocument, он встроен в php.
можете написать как используя DOMDocument добиться результата, буду очень благодарен

нашел пример который выводит все что есть
Код
<?php 
  $data=file_get_contents("http://ufib.com.ua/menu.xml");
  $p = xml_parser_create();
  xml_parse_into_struct($p, $data, $vals, $index);
  xml_parser_free($p);   
  print_r($vals);
?>

результат
Спойлер
[свернуть]

можно ли выбрать конкретные значения из данного примера
« Последнее редактирование: 30.08.2014, 23:43:24 от kav »
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: XML парсинг
« Ответ #5 : 30.08.2014, 23:54:22 »
както так:
Код: php
$xml = implode('', $mymenu);
$dom = new DOMDocument();
$dom->loadXML($xml);
$url = $dom->getElementsByTagName('url')->item(0);
$href = $url->getElementsByTagName('loc')->item(0)->textContent;
echo '<a href="'.$href.'">Главная</a>';
интернет-блог: http://websiteprog.ru
*

kav

  • Захожу иногда
  • 121
  • 0 / 0
Re: XML парсинг
« Ответ #6 : 31.08.2014, 00:12:07 »
както так:
Код: php
$xml = implode('', $mymenu);
$dom = new DOMDocument();
$dom->loadXML($xml);
$url = $dom->getElementsByTagName('url')->item(0);
$href = $url->getElementsByTagName('loc')->item(0)->textContent;
echo '<a href="'.$href.'">Главная</a>';
я безгранично рад и благодарен

если не сложно можешь объяснить некоторые моменты:
Код
$url = $dom->getElementsByTagName('url')->item(0);
тут обращаемся к 0 блоку URL, так как их несколько
Код
$href = $url->getElementsByTagName('loc')->item(0)->textContent;
из него выбираем запись с TAG=LOC, но зачем item(0) ведь такой у нас в блоке URL один?
*

kav

  • Захожу иногда
  • 121
  • 0 / 0
Re: XML парсинг
« Ответ #7 : 31.08.2014, 00:49:37 »
все оказало очень плохо и система не поддерживает php, только HTML и JS. Как можно сделать все тоже но только на них
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: XML парсинг
« Ответ #8 : 31.08.2014, 00:58:42 »
но зачем item(0) ведь такой у нас в блоке URL один?
Все дело в том что метод getElementsByTagName возвращает экземпляр класса DOMNodeList. Он наследует интерфейс Traversable, его объекты можно перебирать в цикле foreach, но он не является массивом. Для извлечения узлов используется метод item('индекс узла'), даже если узел всего один.

Для js можете воcпользоватся jquery XML парсером. Цепляете его аяксом, если он на сервере и парсите.
интернет-блог: http://websiteprog.ru
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
*

kav

  • Захожу иногда
  • 121
  • 0 / 0
Re: XML парсинг
« Ответ #10 : 31.08.2014, 01:54:05 »
kav? скажи пожалуйста зачем тебе xml  файл
parse_ini_file работает быстрее и работать с ним удобнее
на это нашел примеры

меня интересует как выгружать данные из Joomla 3, подойдет любой метод который может дать доступ к пользователям, меню, статьям, баннерам
и как потом это парсить используя только HTML и Json
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Re: XML парсинг
« Ответ #11 : 31.08.2014, 02:03:26 »
Цитировать
меня интересует как выгружать данные
Можно так
Код: php-brief
//$file имя файла
//читаем
$list = unserialize(file_get_contents($file));
//записываем $list - данные
file_put_contents($file, serialize($list));
А вот это не понял
Цитировать
любой метод который может дать доступ к пользователям, меню, статьям, баннерам
Это запросы в базу данных ибо данные там находятся
Цитировать
и как потом это парсить используя только HTML и Json
Эт о чем здесь речь
*

kav

  • Захожу иногда
  • 121
  • 0 / 0
Re: XML парсинг
« Ответ #12 : 31.08.2014, 02:11:25 »
Можно так
Код: php-brief
//$file имя файла
//читаем
$list = unserialize(file_get_contents($file));
//записываем $list - данные
file_put_contents($file, serialize($list));
А вот это не понялЭто запросы в базу данных ибо данные там находятсяЭт о чем здесь речь
я не хочу делать прямые запросы в базу, хотелось бы методами Joomla получить, например, список пунктов меню.
потом мне нужно этот список прочитать в Cordova, а там у меня есть только HTML и JS никакого PHP там не знают
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Re: XML парсинг
« Ответ #13 : 31.08.2014, 02:21:27 »
Цитировать
хотелось бы методами Joomla получить
Joomla написана на php. Так что от пыха никуда
Самый простой способ получать и отправлять тогда будет AJAX
*

kav

  • Захожу иногда
  • 121
  • 0 / 0
Re: XML парсинг
« Ответ #14 : 31.08.2014, 14:40:28 »
Joomla написана на php. Так что от пыха никуда
Самый простой способ получать и отправлять тогда будет AJAX

на стороне Joomla у меня все работает и там я могу использовать PHP, у меня нет PHP на стороне клиента, и там мне приходится парсить это все через JavaScript
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Re: XML парсинг
« Ответ #15 : 31.08.2014, 22:54:57 »
на стороне Joomla у меня все работает и там я могу использовать PHP, у меня нет PHP на стороне клиента, и там мне приходится парсить это все через JavaScript
честно говоря я ничего не понял)
в топике все функции PHP, о каком тут JavaScript идет?
*

kav

  • Захожу иногда
  • 121
  • 0 / 0
Re: XML парсинг
« Ответ #16 : 01.09.2014, 12:54:57 »
немного не в тему, есть ли у Joomla 3 встроенный механизм обмена данными с внешним источником.

Например:
Есть раздел новости, но в нем не все новости доступны посетителям, для просмотра некоторых нужно авторизироваться
Я хочу сделать на другом сайте дублировать новости с теме же правами
форма в которую человек введет свой логин и пароль -> отправка запроса на авторизацию и загрузку новостей согласно уровня доступа -> проверка логин/пароль -> отдача новостей согласно уровня доступа
*

mixtein

  • Осваиваюсь на форуме
  • 20
  • 0 / 0
Re: XML парсинг
« Ответ #17 : 02.09.2014, 14:22:14 »
зачем делать так замудренно ?
смысл от этого я не уловил даже, всё так запутано
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Парсинг XML YRL (Яндекс Недвижимость)

Автор markus-zlg

Ответов: 1
Просмотров: 479
Последний ответ 09.03.2024, 10:07:14
от sivers
Парсинг через sourcer

Автор zhiliv

Ответов: 0
Просмотров: 910
Последний ответ 31.08.2015, 12:51:01
от zhiliv
Парсинг страницы в Joomla

Автор Lovrentiy

Ответов: 0
Просмотров: 1767
Последний ответ 13.04.2015, 17:26:48
от Lovrentiy