Новости Joomla

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

limon142

  • Захожу иногда
  • 71
  • 1 / 0
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

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

Arkadiy

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

limon142

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

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

Поддомен на joomla3

Автор rezchik

Ответов: 21
Просмотров: 883
Последний ответ 01.01.2024, 13:06:46
от Vastriet
ajax загрузка компонента на странице материала К2

Автор Divn

Ответов: 0
Просмотров: 520
Последний ответ 13.01.2023, 15:05:52
от Divn
При срабатывании ajax появляетсся div id="system-message-container"

Автор androv77

Ответов: 1
Просмотров: 454
Последний ответ 17.11.2022, 11:50:42
от androv77
[Решено] Отключить Mootols, Jquery и Bootstrap в Joomla 3

Автор Pazys

Ответов: 126
Просмотров: 93554
Последний ответ 21.10.2022, 22:25:23
от Alex Kop
Передача id поля ajax-запросом в модальное окно bootstrap 4 Joomla 3

Автор coolplaymaster

Ответов: 17
Просмотров: 1341
Последний ответ 21.12.2021, 17:42:45
от coolplaymaster