Новости Joomla

Совет по Joomla: $db->getQuery(true) стал устаревшим

Совет по Joomla: $db->getQuery(true) стал устаревшим

👩‍💻 Совет по Joomla: $db->getQuery(true) стал устаревшим.Раньше при создании запросов в базу данных мы всегда получали объект запроса с помощью метода

getQuery(). Если передавался параметр
$new =
true, то получали новый запрос. Если без - последний.

use Joomla\CMS\Factory;$db = Factory::getContainer()->get('DatabaseDriver');$query = $db->getQuery(new: true);// и строим запрос
Под капот Joomla 4 вошёл Joomla Framework (PHP фреймворк а-ля Laravel, Yii и т.д.), а для Joomla 5 он обновился - версия 3.4.1 вышла 6 октября 2023г. В методе фреймворка есть примечание о том, что параметр
$new, который передавался в метод
getQuery() помечен как устаревший и будет удалён в версии фреймворка 4.0.
The parameter $new is deprecated and will be removed in 4.0, use %s::createQuery() instead.В Joomla 4 версия Joomla Framework была 2.x., в Joomla 5 - 3.x. Поэтому есть предположение, что с выходом Joomla 6 обновится и версия фреймворка - станет 4.0. Поэтому для получения объекта для новых запросов следует использовать метод
createQuery(). Он уже представлен в ядре и широко используется. При этом метод
getQuery() останется, но, скорее всего, будет выполнять функцию только геттера - получения текущего запроса.
@joomlafeed#joomla #php #разработка

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

orsy

  • Захожу иногда
  • 400
  • 23 / 1
  • Web-Factor Ukraine
orsy
сумма видна это получилось, а в самом коде не происходит замена суммы.
Только такое не со всеми плате системами работает надо, чтобы и в коде были изменения

при вводе суммы в поле, код формы тоже не меняется, и форма по идее отправляет то что введено или вставлено в поле.

И неужели сложно для проверка себе отправить рубль чтобы проверить?
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Shustry
результат есть, но не совсем тот:
Код
value="s"
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Код: php
var_dump($matches);
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
при вводе суммы в поле, код формы тоже не меняется, и форма по идее отправляет то что введено или вставлено в поле.

И неужели сложно для проверка себе отправить рубль чтобы проверить?
Webmoney и рбк - работают, они могут принимать без всякой замены.
Но с robox, не будет так работать, если нажать на кнопку выдаст "К сожалению, оплата этого счета невозможна", так как значение передано а коде его нет.
Так что проверил, это хорошая идея может я даже в теме напишу, вдруг кому пригодиться.
Еще раз спасибо!

Спойлер
[свернуть]
« Последнее редактирование: 29.07.2015, 18:08:53 от leo78 »
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Shustry
я не понял куда если как последняя строка то не работает
Код
$document = JFactory::getDocument();
$buffer=$document->getBuffer(component);
$pattern = '|<span class="chislo">(.*)</span>|isU';
preg_match($pattern, $buffer, $matches);
echo var_dump($matches);
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Без echo

Код: php
$document = JFactory::getDocument();
$buffer=$document->getBuffer(component);
$pattern = '|<span class="chislo">(.*)</span>|isU';
preg_match($pattern, $buffer, $matches);
var_dump($matches);
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Что не получается?
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Shustry
Прости еще не проверял, CSS правил и удалял, скрипт правил и удалял, пришлось спрайт-css переделать
Сейчас займусь
Демо
« Последнее редактирование: 31.07.2015, 16:02:46 от leo78 »
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Демо
Ширина кнопок фиксирована, высота выпадающего блока тоже. Там можно без скрипта сделать посредством css3: transition для анимации, сестринский селектор на радиокнопке для показа блока.
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Перемудрили:
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Shustry
Прости не понял насчет  css3: transition
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Перемудрили:

Ничего не перемудрили. В массиве два элемента.

Код: php
echo $matches[0];
echo $matches[1];

Shustry
Прости не понял насчет  css3: transition

Позже сделаю.
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Код
$document = JFactory::getDocument();
$buffer=$document->getBuffer(component);
$pattern = '|<span class="chislo">(.*)</span>|isU';
preg_match($pattern, $buffer, $matches);
echo $matches[1];

Работает!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Модернизировать модуль

Автор kurz

Ответов: 4
Просмотров: 549
Последний ответ 13.09.2022, 15:35:31
от kurz
[SP Page Builder] Модуль ajax contact в модальном окне

Автор TW-WEB

Ответов: 2
Просмотров: 3022
Последний ответ 24.02.2018, 17:34:50
от TW-WEB
Модуль авторизации OpenId

Автор greytm

Ответов: 7
Просмотров: 3230
Последний ответ 04.11.2016, 00:04:31
от KypuHa9_Hora
Как вставить модуль в контент компонента

Автор sava36

Ответов: 21
Просмотров: 18423
Последний ответ 15.06.2016, 09:55:51
от Ilja93
Как вставить модуль в код нужной страницы php?

Автор zvi

Ответов: 7
Просмотров: 3677
Последний ответ 12.04.2016, 19:36:55
от AlekVolsk