Новости Joomla

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

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

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
Ситуация такова...

1. Создаю форму загрузки файлов в модуле...
2. После загрузки мне надо прочитать XML файл который входит в сам шаблон и вывести его данные...
3. Выводить данные на саму страницу не надо... Они нужны для sql запроса...

Итак в чем суть проблемы (я даже сказал бы это не проблема, а уже катастрофа)....

кода я читаю XML файл данные которые получились при чтении надо записать в БД используя
Код
$database = &JFactory::getDBO();
для работы с ней...
Но этот код не работает ПОЧЕМУ ТО


я думаю что надо указать в начале файла
Код
defined( '_JEXEC' ) or die( 'Restricted access-php' );
для запрета прямого доступа... НО с формы на странице я обращаюсь к файлу который загружает файл и читает XML файл, там же и код который должен записывать эти данные в БД...

Но не записывает, потому что я обращаюсь к этому файлу на прямую через форму...

========================
Пожалуйста помогите решить проблему... Или как это можно сделать по другому...
...
*

barmaleos

  • Захожу иногда
  • 238
  • 19 / 1
Re: Друзья что делать в таком случае
« Ответ #1 : 09.09.2014, 15:01:39 »
Не готов спорить, но по-моему вот так:
$db = JFactory::getDbo();
Ну и дальше:
$db = $this->getDbo();
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Re: Друзья что делать в таком случае
« Ответ #2 : 09.09.2014, 15:03:58 »
Чтобы запустить фреймворк Joomla в постороннем файле надо в нем написать следующее:
Код
define('_JEXEC', 1);

if (file_exists(__DIR__ . '/defines.php'))
{
include_once __DIR__ . '/defines.php';
}

if (!defined('_JDEFINES'))
{
define('JPATH_BASE', __DIR__);
require_once JPATH_BASE . '/includes/defines.php';
}

require_once JPATH_BASE . '/includes/framework.php';
Ессно, если файл не в корне сайта, то поправить пути к подключаемым файлам.

А лучше все сделать правильно.
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
Re: Друзья что делать в таком случае
« Ответ #3 : 09.09.2014, 15:24:51 »
Ессно, если файл не в корне сайта, то поправить пути к подключаемым файлам.

А что вы имели ввиду под подключаемым файлам.

Это я должен указать путь к своим же файлам...
...
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Re: Друзья что делать в таком случае
« Ответ #4 : 09.09.2014, 16:22:12 »
Под подключаемыми файлами я имел ввиду те файлы что инклюдятся при помощи include_once и require_once. __DIR__ - это путь до директории файла, в котором это написано. Если файл не в корне, то пути будут Неправильными.
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
Re: Друзья что делать в таком случае
« Ответ #5 : 09.09.2014, 16:57:35 »
мой файл находится в корне... как понял так и изменил,
Код
define('_JEXEC', 1);

if (file_exists('/defines.php'))
{
include_once '/defines.php';
}

if (!defined('_JDEFINES'))
{
define('JPATH_BASE', __DIR__);
require_once JPATH_BASE . '/includes/defines.php';
}

require_once JPATH_BASE . '/includes/framework.php';

выдает ошибку...

Warning: mysqli_ping() [function.mysqli-ping]: Couldn't fetch mysqli in /home/public_html/libraries/joomla/database/database/mysqli.php on line 190

=============================
И где мне указать
-----
$database = JFactory::getDBO();
$user   = JFactory::getUser();
-----

сразу после этого кода или так где у меня код подключения к БД
...
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

В аналитике непонятные ссылки что делать?

Автор hels

Ответов: 7
Просмотров: 1361
Последний ответ 17.05.2018, 15:56:19
от hels
Что делать, если хакнули сайт?

Автор Gandriyko

Ответов: 2
Просмотров: 1631
Последний ответ 12.03.2018, 16:19:47
от draff
Друзья! Нужен совет по домену!

Автор Anutka

Ответов: 5
Просмотров: 1146
Последний ответ 07.12.2017, 09:36:45
от Anutka
Не работает админка Joomla 2.5, что делать?

Автор verov.igor

Ответов: 5
Просмотров: 2322
Последний ответ 06.07.2017, 10:47:21
от SemKimov2
что делать не могу войти на свой сайт

Автор afoninuu

Ответов: 2
Просмотров: 1281
Последний ответ 08.02.2016, 12:24:02
от CCTRRoman