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

Dram

  • Захожу иногда
  • 186
  • 0 / 0
Есть самописный компонент фирм в Joomla, все работает.
Когда-то давно при наполнении базы, не у всех фирм через геокодер Яндекс точно определились адреса.
В недрах компонента фирм есть специальная функция которая чекает адрес через геокодер, определяет район города, ближайшее метро и все записывает в базу.
Если переопределять такие адреса через админку - все нормально обрабатывает. Но таких адресов оч. много, вручную не вариант.

В админке я добавляю адреса через форму, вот ее код:
Цитировать
  <div id="modal-address">
  <form class="add-address" method="post" action="/administrator/index.php">
    <div class="msg"></div>
    <input type="text" name="geo_code" style="width: 500px; padding: 3px;" placeholder="г. Москва ул. Ленина 72" value="" />
    <input type="hidden" name="item_id" value="<?php echo $this->item->id; ?>" />
    <input type="hidden" name="option" value="com_firm">
    <input type="hidden" name="controller" value="action">
    <input type="hidden" name="view" value="action">
    <input type="hidden" name="format" value="raw">
    <input type="hidden" name="task" value="addAddress">
    <input type="submit" name="submit" style="padding: 3px 7px;" value="Добавить">
  </form>
</div>
Насколько я понимаю форма передает введенный мной адрес - geo_code
и id фирмы - $this->item->id;

Далее я нашел в недрах админки эту функцию, она конечно огромная
Код
	function addAddress()
{
$response = array();
$item_id = JRequest::getVar('item_id');
$geo_code = JRequest::getVar('geo_code');
if(!empty($geo_code))
{
$xml = simplexml_load_file('http://geocode-maps.yand ................................
Насколько я опять понимаю, на вход она принимает адрес и id фирмы которые приходят через форму.

Далее решил написать скрипт для автоматизации задуманного
Код
<?php

set_time_limit(0);
const _JEXEC = 1;
error_reporting(E_ALL | E_NOTICE);
ini_set('display_errors', 1);
if (!defined('_JDEFINES')) {
  define('JPATH_BASE', dirname(__FILE__)); // если не в корне - добавить выше сколько надо
  require_once JPATH_BASE . '/includes/defines.php';
}
require_once JPATH_LIBRARIES . '/import.legacy.php';
require_once JPATH_LIBRARIES . '/cms.php';
// Load the configuration
require_once JPATH_CONFIGURATION . '/configuration.php';
$db = JFactory::getDBO();
$query = $db->getQuery(true);

$db->setQuery("SELECT item_id,geo_code FROM `firm_address` WHERE `locality` = '' limit 1");
$result = $db->loadObjectlist();

foreach ($result as $item){

//и вот тут я застрял как передать $item->item_id  и $item->geo_code  из самописного скрипта в корне  сайта в функцию addAddress в админке ?

}
как передать $item->item_id  и $item->geo_code  из самописного скрипта в корне  сайта в функцию addAddress в админке ?
*

draff

  • Живу я здесь
  • 4822
  • 332 / 7
  • Ищу работу
Для начала подключить файл с нужной функцией, а потом проверить что сюда приходит с формы
Код
$item_id = JRequest::getVar('item_id');
$geo_code = JRequest::getVar('geo_code');
*

ProtectYourSite

  • Живу я здесь
  • 2059
  • 110 / 4
  • Безопасность вебсайтов
Что мешает скопировать эту функцию в свой код и отдавать переменным через параметры функции?
*

Dram

  • Захожу иногда
  • 186
  • 0 / 0
Что мешает скопировать эту функцию в свой код и отдавать переменным через параметры функции?
Это первое что я сделал, но функция огромная и завязана на соседние функции, короче не сработало....
*

ProtectYourSite

  • Живу я здесь
  • 2059
  • 110 / 4
  • Безопасность вебсайтов
тогда в самом файле добавить параметры с пустым значением по умолчанию и добавить проверку, если параметр не пришел, то получать с формы
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Joomla 3.9 проблемы после обновления Общие настройки

Автор sergvm

Ответов: 35
Просмотров: 1032
Последний ответ 30.06.2020, 20:52:45
от Olga13
Вышел релиз безопасности Joomla 3.9.19

Автор b2z

Ответов: 15
Просмотров: 1628
Последний ответ 30.06.2020, 18:21:04
от AlexB
Как организовать перенос настроек Joomla 3 и компонетов на другие сайты?

Автор raykom2010

Ответов: 4
Просмотров: 190
Последний ответ 24.06.2020, 07:16:26
от raykom2010
Вышел релиз безопасности Joomla 3.9.17 и баг-фикс релиз 3.9.18

Автор b2z

Ответов: 19
Просмотров: 2633
Последний ответ 02.06.2020, 18:10:05
от b2z
Обновил Joomla и к2 компонент и изменились ссылки

Автор mrmarkov

Ответов: 2
Просмотров: 364
Последний ответ 25.05.2020, 16:49:42
от mrmarkov