Новости Joomla

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6.2PageBuilder Toolkit - это специализированный плагин для конструктора страниц Yootheme Pro, содержит набор различных утилит для ускорения процесса работы и отладки макета, множественные улучшения в интерфейсе, включая поддержку dark mode, подсказки, быстрая смена разрешения в окне просмотра и много чего еще.v.1.6.2 Что нового?- Индикатор статусов: теперь не просто показывает состояние запросов, но и делает автоматические попытки их отправки при кратковременных сбоях в сети, а если это не помогло, то переводит конструктор в ручной режим, что позволяет сохранит макет и настройки темы прежде чем вы потеряете все, что было сделано с момента последнего сохранения- Подсветка ошибок в макете: плагин анализирует код страницы и может автоматически подсвечивать data атрибуты с кучей мусора, которые попадают в код страницы при копипасте из Figma в TinyMCE (пригодится для старых макетов, в текущей работе плагин сам очищает код мусора). Также есть подсветка семантических ошибок сборки - дубли h1 тега на странице и вложенных друг в друга заголовков.- Улучшена поддержка будущего релиза Yootheme Pro 5 и редактора CodeMirror 6Плагин для русскоязычных пользователей доступен в каталоге расширений SovMart и распространяется за символическую плату (100р). Разработчики Joomla расширений и партнеры автора могут получить плагин бесплатно.Для работы плагина необходим конструктор страниц Yootheme Pro.Разработчик плагина - участник нашего сообщества Александр Судьбинов (@alexrevo), член официальной группы поддержки Yootheme Pro. Страница расширенияОписание на сайте автора@joomlafeed#joomla #yootheme

WT IndexNow плагин для Joomla - отправка страниц сайта на переиндексацию в поисковые системы

WT IndexNow плагин для Joomla - отправка страниц сайта на переиндексацию в поисковые системы

👩‍💻 WT IndexNow плагин для Joomla - отправка страниц сайта на переиндексацию в поисковые системы.Пакет плагинов, обеспечивающий ручную и автоматическую отправку url адресов Joomla в поисковые системы на переиндексацию по протоколу IndexNow. Согласно документации протокол поддерживают все крупнейшие поисковые системы, кроме Google. Протокол служит для получения от сайтов URL, которые нужно переиндексировать заново или проиндексировать в первый раз как можно быстрее. Отправка адресов сайта таким образом существенно ускорит индексацию нового или изменённого контента поисковыми системами.Поисковые системы по этому протоколу обмениваются друг с другом данными, поэтому отправив URL в одну из них вы сообщаете их сразу всем. Протокол IndexNow поддерживают:- Amazon- Microsoft Bing- Naver- Seznam.cz- Yandex - YepСуточный лимит URL - 10000 в сутки. Возможна отправка вручную и автоматически. Поддерживаются:- материалы и категории материалов Joomla- контакты и категории контактов Joomla- SW JProjects - компонент каталога расширений для Joomla- JoomShopping - компонент интернет-магазина для Joomla- Phoca Download - компонент каталога файлоа для Joomla- Phoca Cart - компонент интернет-магазина для Joomla- RadicalMart - компонент интернет-магазина для JoomlaПакет плагинов работает с Joomla 4.3+. Тестировался на Joomla 5 и Joomla 6.Смотреть видео:- ВК Видео- RuTubeСсылки:Страница расширенияGitHub расширенияРаздел Поддержка протокола IndexNow в справке Яндекса@joomlafeed#joomla #seo #indexnow

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

ChervonStudio

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
Привет! Делаю модуль. Пытаюсь передать данные из формы в default.php при помощи com_ajax. Итак что я делаю

В файле helper.php добавил класс
Код: php
public static function getAjax() {
// Get module parameters
jimport('joomla.application.module.helper');
$input  = JFactory::getApplication()->input;
$module = JModuleHelper::getModule('auction');
$params = new JRegistry();
$params->loadString($module->params);
}

в mod_name.php добавил форму и JS
Код: php
<form method="post" action="this.form.submit();" name="form1" id="lol">
    <input type="text" name="price" onclick="function1();">value1</input>
</form>

<script>
 jQuery.noConflict();
   function function1() {
    var data = jQuery("lol").serialize();
    jQuery.ajax({
        url: "index.php?option=com_ajax&module=auction&method=post&format=json",
        type: "POST",
        data: data,
        success: function(data){
            alert(data);
        }
    });
};
</script>

Вопрос. Как мне эти данные получить в default.php ? И все ли я сделал правильно?
*

ProtectYourSite

  • Живу я здесь
  • 2368
  • 139 / 4
  • Безопасность вебсайтов
Re: com_ajax передача данных из формы POST
« Ответ #1 : 11.06.2017, 17:55:09 »
Для каких целей получать данные?  Default.php это файл отображения, если с данными необходимо что-то делать, то лучше в helper обрабатывать.
*

ChervonStudio

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
Re: com_ajax передача данных из формы POST
« Ответ #2 : 11.06.2017, 17:56:59 »
Для каких целей получать данные?  Default.php это файл отображения, если с данными необходимо что-то делать, то лучше в helper обрабатывать.

В default.php я получить переменную и записать в базу. Но у меня ругается консоль на url запроса...
*

ProtectYourSite

  • Живу я здесь
  • 2368
  • 139 / 4
  • Безопасность вебсайтов
Re: com_ajax передача данных из формы POST
« Ответ #3 : 11.06.2017, 18:19:07 »
В default.php я получить переменную и записать в базу. Но у меня ругается консоль на url запроса...
Google Translate? Скрин консоли?
*

ChervonStudio

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
Re: com_ajax передача данных из формы POST
« Ответ #4 : 11.06.2017, 19:04:55 »
Google Translate? Скрин консоли?

Сейчас код в mod_name.php вот такой. При нажатии на кнопку выдает алерт с [object Object]
Код: php
<form method="POST" id="formx" action="javascript:void(null);" onsubmit="function1()">
<legend>Test From</legend>
<label for="name">Name:</label><input id="name" name="name" value="" type="text">
<label for="email">Email:</label><input id="email" name="email" value="" type="text">
<input value="Send" type="submit">
</form>
 
<script>
 jQuery.noConflict();
   function function1() {
    var data = jQuery("#lol").serialize();
    jQuery.ajax({
        url: "index.php",
        data:
        {
option: 'com_ajax',
module: 'auction',
method:'get',
format: 'json',
    },
        success: function(data){
            alert(data);
        }
    });
};
</script>
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: com_ajax передача данных из формы POST
« Ответ #5 : 11.06.2017, 21:00:37 »
В default.php я получить переменную и записать в базу. Но у меня ругается консоль на url запроса...
Это в хелпере делайте потом уже возвращаете результат.
Вот в статье все хорошо расписанно. Разве что про название класса  хелпера не написалаи
https://cmscafe.ru/docs/joomla/developer/module-joomla-2-5-joomla-3/616-ajax-funktsionalnost-s-pomoshchyu-ajax-interfejsa-com-ajax
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: com_ajax передача данных из формы POST
« Ответ #6 : 11.06.2017, 21:08:18 »
var data = jQuery("#lol").serialize();
Догадайтесь с трех раз, что на сервер уходит.
Пардон, не увидел что ниже переопределяется.
*

ChervonStudio

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
Re: com_ajax передача данных из формы POST
« Ответ #7 : 11.06.2017, 21:10:11 »
var data = jQuery("#lol").serialize();
Догадайтесь с трех раз, что на сервер уходит.

данные из формы #lol
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: com_ajax передача данных из формы POST
« Ответ #8 : 11.06.2017, 21:15:13 »
SerializeArray
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: com_ajax передача данных из формы POST
« Ответ #9 : 11.06.2017, 21:26:29 »
данные из формы #lol
Уверены?
data:
        {
option: 'com_ajax',
module: 'auction',
method:'get',
format: 'json',
    }
А где форма #lol?
*

ChervonStudio

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
Re: com_ajax передача данных из формы POST
« Ответ #10 : 11.06.2017, 21:30:45 »
Уверены?
data:
        {
option: 'com_ajax',
module: 'auction',
method:'get',
format: 'json',
    }
А где форма #lol?

Вот поправил. Выводится {"success":true,"message":null,"messages":null,"data":null}
data null, хотя я в нее передал данные
Код: php
<div id="status">Вывод</div>

<form method="POST" id="lol" action="javascript:void(null);" onsubmit="function1()">
    <input name="price" type="text" value="" class="text_area">
       </br>
       <input type="submit" name="submit" value="Поставить" class="button_auc">
</form>
<script>
 jQuery.noConflict();
   function function1() {
    var form = jQuery("#lol").serializeArray();
    jQuery.ajax({
        type: 'POST',
        url: "index.php",
        dataType:'json',
        data:
        {
option: 'com_ajax',
module: 'auction',
format: 'json',
data: form
    },
       
        success: function(data, status){
        document.getElementById('status').innerHTML=JSON.stringify(data);
        },
        error: function(data,status){
           
        }
    });
};
</script>
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: com_ajax передача данных из формы POST
« Ответ #11 : 11.06.2017, 21:35:35 »
А в getAjax допишите
return ['result'=>'Уряяяяя'];
*

ChervonStudio

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
Re: com_ajax передача данных из формы POST
« Ответ #12 : 11.06.2017, 21:43:24 »
А в getAjax допишите
return ['result'=>'Уряяяяя'];

Сори за тупость) Но у меня так и выводится в data 'result'=>'Уряяяяя' . А не данные формы))
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: com_ajax передача данных из формы POST
« Ответ #13 : 11.06.2017, 21:45:05 »
return ['form'=>$_POST];
*

ChervonStudio

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
Re: com_ajax передача данных из формы POST
« Ответ #14 : 11.06.2017, 21:56:31 »
return ['form'=>$_POST];

Спасибо! Я получил массив в массиве {"forma":{"option":"com_ajax","module":"auction","format":"json","forma":[{"name":"price","value":"я это ввел"}]}}}
Пробую достать value. return ['forma'=>$_POST['value']], но выходит нул. Буду очень благодарен
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: com_ajax передача данных из формы POST
« Ответ #15 : 11.06.2017, 22:14:04 »
Ладно. Спать пора. В общем.
Не стоит использовать $_POST напрямую без проверки входящих данных. Можно что нибудь нехорошее получить.
В getAjax обьект $input вы уже получили.
Теперь получаете данные формы.
Код: php
$price = $input->getArray([
'price'=>'float'
]);
return ['price'=>$price['price']+140.54];
В js-е
Код: javascript
success: function(data, status){ 
console.log(data);
        document.getElementById('status').innerHTML=data.price;
        },
Код пишу прямо в форме быстрого ответа возможны ошибки.
В поле ввода должна быть цифра.
Отладка.
Чтобы увидеть что получил в getAjax
Пишешь в нем
Код: php
var_dump($price); die();
В js получаешь
Код: javascript
success: function(data, status){ 
console.log(data);        
        },
И в консоли смотришь что пришло.
« Последнее редактирование: 11.06.2017, 22:19:03 от passer »
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: com_ajax передача данных из формы POST
« Ответ #16 : 11.06.2017, 22:24:46 »
Сделаю две приписки.
1. есть $app->input->post->getAray
2. В браузере есть вкладка сеть. Там можно посмотреть что пришло и что ушло. А так же ошибки. можно даже не делать conlose.log (ибо если там ошибка php то придет не json) просто сдеаать var_dump или print_r
« Последнее редактирование: 11.06.2017, 23:54:25 от Septdir »
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

ChervonStudio

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
Re: com_ajax передача данных из формы POST
« Ответ #17 : 11.06.2017, 22:28:34 »
Ладно. Спать пора. В общем.
Не стоит использовать $_POST напрямую без проверки входящих данных. Можно что нибудь нехорошее получить.
В getAjax обьект $input вы уже получили.
Теперь получаете данные формы.
Код: php
$price = $input->getArray([
'price'=>'float'
]);
return ['price'=>$price['price']+140.54];
В js-е
Код: javascript
success: function(data, status){ 
console.log(data);
        document.getElementById('status').innerHTML=data.price;
        },
Код пишу прямо в форме быстрого ответа возможны ошибки.
В поле ввода должна быть цифра.
Отладка.
Чтобы увидеть что получил в getAjax
Пишешь в нем
Код: php
var_dump($price); die();
В js получаешь
Код: javascript
success: function(data, status){ 
console.log(data);       
        },
И в консоли смотришь что пришло.

Все сделал, выдает просто undefined. И почему float? Это что вообще?
*

ChervonStudio

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
Re: com_ajax передача данных из формы POST
« Ответ #18 : 11.06.2017, 22:33:46 »
Ладно. Спать пора. В общем.
Не стоит использовать $_POST напрямую без проверки входящих данных. Можно что нибудь нехорошее получить.
В getAjax обьект $input вы уже получили.
Теперь получаете данные формы.
Код: php
$price = $input->getArray([
'price'=>'float'
]);
return ['price'=>$price['price']+140.54];
В js-е
Код: javascript
success: function(data, status){ 
console.log(data);
        document.getElementById('status').innerHTML=data.price;
        },
Код пишу прямо в форме быстрого ответа возможны ошибки.
В поле ввода должна быть цифра.
Отладка.
Чтобы увидеть что получил в getAjax
Пишешь в нем
Код: php
var_dump($price); die();
В js получаешь
Код: javascript
success: function(data, status){ 
console.log(data);       
        },
И в консоли смотришь что пришло.

В консоли
   почему то у value значение null
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: com_ajax передача данных из формы POST
« Ответ #19 : 11.06.2017, 22:38:22 »
Ну видимо как сказал Septdir надо
Код: php
price = $input->post->getArray([
var_dump($price); die();
Что возвращает?
Основы отладки вам дали. Отладку придется делать самостоятельно.
Кто ж за вас ее делать будет. Если данные не приходят, значит где то теряются. Ошибка. Ищите где.
Как искать вам рассказали.
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: com_ajax передача данных из формы POST
« Ответ #20 : 11.06.2017, 22:41:49 »
Ошибки php на максимум. и во вкладку сеть, смотрите что ушло. Либо давайте сайт если время будет кто нибудь глянет. Еще не плохо бы законсолить данные до отправки.
Первый AJAX он трудный самый, потом как по маслу пойдет.
кроме того сделайте так
print_r($input->post) это весь пость
Ну и конечно же дока по jimput https://docs.joomla.org/Retrieving_request_data_using_JInput и еще, получение параметров в пример и вас в коде не верное. так вы получиле паметр по типу или позиции модуля, а вам надо конкретного модуля по id.
« Последнее редактирование: 11.06.2017, 22:49:31 от Septdir »
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

ChervonStudio

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
Re: com_ajax передача данных из формы POST
« Ответ #21 : 11.06.2017, 23:39:40 »
Ошибки php на максимум. и во вкладку сеть, смотрите что ушло. Либо давайте сайт если время будет кто нибудь глянет. Еще не плохо бы законсолить данные до отправки.
Первый AJAX он трудный самый, потом как по маслу пойдет.
кроме того сделайте так
print_r($input->post) это весь пость
Ну и конечно же дока по jimput https://docs.joomla.org/Retrieving_request_data_using_JInput и еще, получение параметров в пример и вас в коде не верное. так вы получиле паметр по типу или позиции модуля, а вам надо конкретного модуля по id.

и я не могу делать дамп или принт в getAjax. Если вставляю что-то из этого, скрипт просто не запускается. Жму на кнопку а результата  ноль
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: com_ajax передача данных из формы POST
« Ответ #22 : 11.06.2017, 23:55:49 »
и я не могу делать дамп или принт в getAjax. Если вставляю что-то из этого, скрипт просто не запускается. Жму на кнопку а результата  ноль

Такого не бывает. Что в запросе.
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: com_ajax передача данных из формы POST
« Ответ #23 : 12.06.2017, 00:46:37 »
судя по тому json который вы показываете "я это ввел" лежит в
Код
$_POST['forma'][0]['value']
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: com_ajax передача данных из формы POST
« Ответ #24 : 12.06.2017, 09:45:34 »
и я не могу делать дамп или принт в getAjax. Если вставляю что-то из этого, скрипт просто не запускается. Жму на кнопку а результата  ноль
Он и не должен запускаться. die() обрывает выполнение скрипта. Результат в консоли js нужно смотреть.
*

ChervonStudio

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
Re: com_ajax передача данных из формы POST
« Ответ #25 : 12.06.2017, 10:42:33 »
Он и не должен запускаться. die() обрывает выполнение скрипта. Результат в консоли js нужно смотреть.
Если я вставляю echo, скрипт тоже не работает.
вот код
Код: php
<?php

// No direct access
defined( '_JEXEC' ) or die;

/**
 * Class Module Helper
 * @author Alex Chervon
 */
class modAuctionHelper
{
   

/**
* getData method
* @param $params
* @return array
*/
static function getData( $params )
{
$db = JFactory::getDbo();
return array();
}
   
    public static function getAjax()
{
jimport('joomla.application.module.helper');
$input  = JFactory::getApplication()->input;
$module = JModuleHelper::getModule('auction');
        $price = $_POST['forma'][0]['value'];
      echo $price;     
       return true;
       
       
     

}
}
   




?>

*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: com_ajax передача данных из формы POST
« Ответ #26 : 12.06.2017, 13:58:31 »
он работает, просто ответ получается не json, и ваш javascript вываливается с ошибкой. ловите исключения в error, либо просто смотрите в консоли ответ. а лучше просто делайте return, а не echo
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ProtectYourSite

  • Живу я здесь
  • 2368
  • 139 / 4
  • Безопасность вебсайтов
Re: com_ajax передача данных из формы POST
« Ответ #27 : 12.06.2017, 18:09:24 »
Код
$response=JFactory::getApplication()->input->getString('form');
И обрабатываешь как душе угодно данные формы
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Прописать условие для сохранения данных в БД

Автор semen1707

Ответов: 0
Просмотров: 527
Последний ответ 14.04.2021, 00:59:44
от semen1707
Вызов формы компонента в pop-up, при клике по ссылке из любого места

Автор SkyAn

Ответов: 1
Просмотров: 726
Последний ответ 01.03.2021, 04:08:48
от gartes
Модель для представления, которое показывает списки данных разных типов

Автор borro

Ответов: 27
Просмотров: 1298
Последний ответ 06.05.2020, 11:57:12
от Septdir
Связать две таблицы с БД для дальнейшего вывода данных с них

Автор golinejj

Ответов: 16
Просмотров: 1301
Последний ответ 06.02.2020, 15:40:58
от golinejj
Pagination компонента и данные из формы модуля

Автор platonische

Ответов: 4
Просмотров: 1096
Последний ответ 29.01.2020, 11:32:43
от mardok