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

limon142

  • Осваиваюсь на форуме
  • 56
  • 1
jQuery.ajax в joomla3
« : 25.12.2016, 10:09:20 »
Прошу помощи уважаемые форумчане. Как передать AJAX с записью в БД и вывести оповещение.
Где ошибка не могу понять:
1. подключаю в index.php
Код
 <script type="text/javascript" src="https://code.jquery.com/jquery-1.12.3.min.js"></script>

2. в файле com_test\views\messag\tmpl\default.php пишу
 
Код
<?php
defined('_JEXEC') or die;
<script type="text/javascript">
function add_favorites(add)
{ jQuery.ajax({
type : 'POST',
url : 'index.php?option=com_test&view=messag',
data : { 'task': "add_favorites",
            'add': add},
    success : function(result, errors)
{ if ("ok" == result)
{alert("Успешно добавлено"); }
else { alert("Произошла ошибка при добавлении");
}}}); }
</script>
<div class="pa">
<a href="#"  title="Добавить " onclick="add_favorites(<?php echo $val->id ?>);return false;">Добавить</a>
  </div>

3. в контроллере com_test\controllers\messag.php
Код
<?php
defined('_JEXEC') or die;
class TestControllerMessag extends JControllerLegacy {
public function add_favorites(){
   $database = JFactory::getDbo();
   $user  = JFactory::getUser();
   $add = JRequest::getVar('add');
   $sql ='INSERT INTO #__test (u_id,p_id)
      VALUES ('.$user->get('id',0).','.$add .')';
$database->setQuery($sql);
$database->query();
exit ('ok');
die();
}}


Но почему то не записывает данные в БД и не выводить положительный ответ "Успешно добавлено".
Помогите разобраться.
« Последнее редактирование: 25.12.2016, 13:04:02 от limon142 »
*

limon142

  • Осваиваюсь на форуме
  • 56
  • 1
Re: jQuery.ajax в joomla3
« Ответ #1 : 25.12.2016, 15:42:59 »
Я так понимаю, что jQuery.ajax отрабатывается, на потом в контроллер нечего не попадает и соответственно не возвращает   ('ok'). НО почему подскажите.
*

Arkadiy

  • Группа развития
  • 5350
  • 440
  • Крепитесь, други.
Re: jQuery.ajax в joomla3
« Ответ #2 : 25.12.2016, 16:14:18 »
Откройте отладку в браузере, посмотрите какой URL у вас получился в этом запросе, какой статус ответа, какой ответ, попробуйте явно указать тип принимаемых данных AJAX запроса как текст.
*

limon142

  • Осваиваюсь на форуме
  • 56
  • 1
Re: jQuery.ajax в joomla3
« Ответ #3 : 26.12.2016, 04:20:52 »
Все разобрался, вдруг кому пригодится:
1- функционал рабочий за исключение адреса обработчика который надо поправить (здесь на форуме где то есть ответ)
Код
url : 'index.php?option=com_test&view=messag',

2- а в самой joomla3 есть готовые решения (плюшки) для того этого функционала? Если кому не трудно показать на моем примере, я думную начинающим будет  полезно.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Отправка AJAX из компонента

Автор ChervonStudio

Ответов: 5
Просмотров: 75
Последний ответ 29.08.2017, 18:04:07
от dmitry_stas
Внедрение AJAX в модуле

Автор alpha_ru

Ответов: 21
Просмотров: 250
Последний ответ 21.08.2017, 09:38:38
от ProtectYourSite
[Решено]Изменить внешний вид пагинации

Автор pavel2950

Ответов: 1
Просмотров: 107
Последний ответ 17.08.2017, 15:31:24
от pavel2950
Поддомены в папках основного домена

Автор Dmitriy5023

Ответов: 4
Просмотров: 147
Последний ответ 08.08.2017, 01:40:49
от Филипп Сорокин
Как убрать текст на главной?

Автор m03mug08

Ответов: 4
Просмотров: 139
Последний ответ 05.08.2017, 14:59:41
от Missile