Новости Joomla

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

Joomla 5+ пакет для интеграции с API Почты России: нормализация данных, расчёт доставки, создание отправлений, партии, документы, возвраты, поиск отделений, справочники и SOAP-отслеживание.

v.3.0.0. Что нового?
Это дальнейшее развитие ранее закрытой Joomla-библиотеки для работы с API сервиса Отправка (для бизнеса) Почты России. Поэтому версия не 1.0.0, а 3.0.0.

Сейчас эта библиотека ушла от собственных реализаций и стала Joomla-обёрткой известного PHP SDK от Lapay Group.

Возможности библиотеки.
- получение настроек аккаунта, точек сдачи и текущего остатка запросов к API;
- нормализация адресов, ФИО и телефонов перед созданием отправления;
- расчёт тарифа и срока доставки;
- создание, поиск, изменение, удаление и возврат заказов в состояние «Новые»;
- проверка надёжности получателя;
- создание партий, просмотр партий и заказов внутри партии;
- генерация пакета печатных документов и формы Ф103;
- создание, изменение и удаление возвратных отправлений;
- поиск отделений по индексу, адресу и координатам, получение сервисов отделения;
- локальный список стран;
- SOAP-отслеживание операций по РПО и работа с билетами пакетного трекинга.

👩‍💻 Joomla-возможности.
В пакете библиотеки WT Otpravkapochtaru есть поля Joomla Form для расширений. Они позволяют работать в интерфейсе Joomla с некоторыми типами данных, получаемых по API из вашего личного кабинета в ЛК Почты России для бизнеса.
На данный момент в библиотеке доступны 3 поля списков, которые отображают доступные в аккаунте ОПС, типы и категории отправлений.
Поддерживаются зависимые списки: значение одного поля обновляется при изменении другого.

Системные требования.
Системные требования в основном связаны с системными требованиями апстрима библиотеки - LapayGroup PHP SDK.
- Joomla 5+
- PHP 8.3+
- Расширения PHP:
-- ext-mbstring
-- ext-simplexml
-- ext-soap (опционально, для трекинга)
-- ext-zip

Ссылки:
- Страница расширения
- GitHub библиотеки и документация

@joomlafeed

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

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Пытаюсь создать таблицу в базе данных:

Код
$db1 =& JFactory::getDBO();
$query = 'CREATE TABLE IF NOT EXISTS `#__table1` (
      `rowid` integer NOT NULL AUTO_INCREMENT,
              `name` varchar(255) NOT NULL DEFAULT ``,
              `artist` varchar(80) NOT NULL DEFAULT ``,
              `title` varchar(80) NOT NULL DEFAULT ``,
              `down_count` integer NOT NULL DEFAULT 0,
              `raiting` integer NOT NULL DEFAULT 0,
              PRIMARY KEY (`rowid`),
              UNIQUE KEY `music_name` (`name`,`artist`,`title`)
      );';

        $result = $db1->setQuery($query);
        if (!$result = $db1->query($query)){
            echo "Error: ".$db1->getError();// отлавливаем ошибки
        }

Код выполняется внутри функции. Вернее должен выполняться. Всё остальное внутри функции выполняется. А этот код почему-то нет! Таблица не создаётся!

В чём может быть проблема?
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

icom

  • Давно я тут
  • 830
  • 202 / 4
Re: Проблемы работы с базой данных
« Ответ #1 : 01.09.2010, 12:50:18 »
может проблема в том что вы целочисленные поля объявили как integer а не например - int(11)
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Проблемы работы с базой данных
« Ответ #2 : 01.09.2010, 13:04:09 »
может проблема в том что вы целочисленные поля объявили как integer а не например - int(11)

Изначально это было int(11)... уже и так и так пытался.

А в результате выдаёт:
Цитировать
Error:
И всё... никаких ошибок.

Может быть внутри функции такое сделать невозможно?

Даже не знаю, что предположить.
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Проблемы работы с базой данных
« Ответ #3 : 01.09.2010, 13:23:31 »
Вот код страницы с начала:

Код
defined( '_JEXEC' ) or die( 'Restricted access' );
$mainframe->registerEvent( 'onPrepareContent', 'plugin1' );

function plugin1( &$row, &$params )  {

        $db1 =& JFactory::getDBO();
$query = 'CREATE TABLE IF NOT EXISTS `#__table1` (
      `rowid` integer NOT NULL AUTO_INCREMENT,
              `name` varchar(255) NOT NULL DEFAULT ``,
              `artist` varchar(80) NOT NULL DEFAULT ``,
              `title` varchar(80) NOT NULL DEFAULT ``,
              `down_count` integer NOT NULL DEFAULT 0,
              `raiting` integer NOT NULL DEFAULT 0,
              PRIMARY KEY (`rowid`),
              UNIQUE KEY `music_name` (`name`,`artist`,`title`)
      );';

        $result = $db1->setQuery($query);
        if (!$result = $db1->query($query)){
            echo "Error: ".$db1->getError();// отлавливаем ошибки
        }
}

И почему-то этот код не работает. Таблица не создаётся! :-(
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Проблемы работы с базой данных
« Ответ #4 : 01.09.2010, 13:35:41 »
Такс... походу проблема в самом запросе... попробовал пример из ехтравоте плагина:

Код
$query = 'CREATE TABLE IF NOT EXISTS  `#__content_extravote` (
      `content_id` INT(11) NOT NULL,
      `extra_id` INT(11) NOT NULL,
      `lastip` VARCHAR(50) NOT NULL,
      `rating_sum` INT(11) NOT NULL,
      `rating_count` INT(11) NOT NULL,
  KEY `extravote_idx` (`content_id`)
      );';

Всё сработало! Таблица создалась. Всем спасибо. Буду копать дальше!
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Re: Проблемы работы с базой данных
« Ответ #5 : 01.09.2010, 13:36:34 »
Код
if (!$db1->query()) {
  echo $db1->stderr();
}
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: Проблемы работы с базой данных
« Ответ #6 : 01.09.2010, 13:41:00 »
Вообще-то прежде чем совать в код, запрос стоит прогонять через phpmyadmin чистоганом. Т.е. без php.
Код: php
$query = "CREATE TABLE IF NOT EXISTS `#__table1` (
     `rowid` integer NOT NULL AUTO_INCREMENT,
              `name` varchar(255) NOT NULL DEFAULT '',
              `artist` varchar(80) NOT NULL DEFAULT '',
              `title` varchar(80) NOT NULL DEFAULT '',
              `down_count` integer NOT NULL DEFAULT 0,
              `raiting` integer NOT NULL DEFAULT 0,
              PRIMARY KEY (`rowid`),
              UNIQUE KEY `music_name` (`name`)
     )";
$db =& JFactory::getDBO();
$db->setQuery($query);
$db->query();
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Проблемы работы с базой данных
« Ответ #7 : 01.09.2010, 14:02:43 »
Не понимает в строке
Код
`rowid` int(11) NOT NULL AUTO_INCREMENT,
Слово:
Код
AUTO_INCREMENT

Также не понимает в конце каждой строки:

Код
DEFAULT ''

Почему?

Копаю дальше...
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Проблемы работы с базой данных
« Ответ #8 : 01.09.2010, 14:11:55 »
Код
if (!$db1->query()) {
  echo $db1->stderr();
}

Спасибо! Теперь вижу ошибки!
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Проблемы работы с базой данных
« Ответ #9 : 01.09.2010, 14:16:53 »
Почти разобрался! Вот эта конструкция работает вся кроме последней строчки:

Код
'CREATE TABLE IF NOT EXISTS `#__table1` (
      `rowid` int(11) unsigned NOT NULL AUTO_INCREMENT,
      `name` varchar(255) NOT NULL DEFAULT \'\',
      `artist` varchar(80) NOT NULL DEFAULT \'\',
               `title` varchar(80) NOT NULL DEFAULT \'\',
               `down_count` int(11) NOT NULL DEFAULT 0,
               `raiting` int(11) NOT NULL DEFAULT 0,
                PRIMARY KEY (`rowid`),
                UNIQUE KEY `music_name` (`name`,`artist`,`title`)
            );'

Если это убрать:

Код
,
                UNIQUE KEY `music_name` (`name`,`artist`,`title`)

То всё работает!

Иначе выдаёт ошибку:

Цитировать
Specified key was too long; max key length is 1000 bytes SQL=CREATE TABLE...

Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Проблемы работы с базой данных
« Ответ #10 : 01.09.2010, 14:23:35 »
Понял в чём причина:

для Utf8 1 символ — 3 байта.

Сократил кол-во символов в полях до 200, 50 и 50

Всем спасибо за помощь. Смоку отдельное за вывод ошибок! Уже поставил +.
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Проблемы с входом на сайт

Автор belovpaha

Ответов: 7
Просмотров: 10039
Последний ответ 20.09.2022, 14:30:51
от sivers
Проблемы с правами на запись папок "logs и tmp"

Автор murich

Ответов: 42
Просмотров: 32764
Последний ответ 07.10.2021, 18:29:16
от Maxandrey
Ошибка #1050 при переносе базы данных на хостинг

Автор Ksen

Ответов: 7
Просмотров: 29227
Последний ответ 16.03.2020, 17:47:29
от Petrovich
Есть у кого нибудь опыт работы с EZ Realty?

Автор stardel

Ответов: 5
Просмотров: 4537
Последний ответ 08.03.2019, 13:47:38
от zaspola
Передача данных в форму при нажатии на ссылку

Автор usmdamir

Ответов: 4
Просмотров: 3572
Последний ответ 26.07.2017, 09:40:22
от usmdamir