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

alpha_ru

  • Захожу иногда
  • 85
  • 0 / 0
Внедрение AJAX в модуле
« : 19.08.2017, 21:09:16 »
Пытаюсь вставить данные в базу в модуле с помощью ajax. Не получается.
вид
Спойлер
[свернуть]
helper
Спойлер
[свернуть]
Прошу помощи.
*

Aleks.Denezh

  • Живу я здесь
  • 2955
  • 388 / 4
Re: Внедрение AJAX в модуле
« Ответ #1 : 19.08.2017, 21:19:24 »
Что именно не получается? И для таких действий конечно лучше стучаться в какой то компонент
*

alpha_ru

  • Захожу иногда
  • 85
  • 0 / 0
Re: Внедрение AJAX в модуле
« Ответ #2 : 19.08.2017, 22:10:16 »
Компонент есть - запись обращений в базу.
В теории с ajax все просто. Но с раализацией проблема. Приведенный код не работает.
*

Septdir

  • Живу я здесь
  • 2741
  • 133 / 3
  • JoomlaZen
Re: Внедрение AJAX в модуле
« Ответ #3 : 19.08.2017, 22:33:29 »
Компонент есть - запись обращений в базу.
В теории с ajax все просто. Но с раализацией проблема. Приведенный код не работает.
Ну либо запрос не верный. Сейчас точно не скажу но насколько я помню в запросе должен быть mod_name
Ну и ещё частенько в названии класса косячат.
Тут писал под com_ajax
JZ Notice - Модуль уведомлений на сайте [BETA]
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
Мои Контакты | Мой GitHub | JoomlaZen
*

alpha_ru

  • Захожу иногда
  • 85
  • 0 / 0
Re: Внедрение AJAX в модуле
« Ответ #4 : 20.08.2017, 14:24:21 »
В функцию ajax данные из полей формы передаются. Нет связи вида с helper. Как это сделать? В доке указано, что должно быть в ajax, а примера кода нет.
*

Aleks.Denezh

  • Живу я здесь
  • 2955
  • 388 / 4
Re: Внедрение AJAX в модуле
« Ответ #5 : 20.08.2017, 14:31:33 »
Покажите весь класс модуля
*

alpha_ru

  • Захожу иногда
  • 85
  • 0 / 0
Re: Внедрение AJAX в модуле
« Ответ #6 : 20.08.2017, 14:54:39 »
helper
Спойлер
[свернуть]
« Последнее редактирование: 20.08.2017, 15:00:10 от alpha_ru »
*

Aleks.Denezh

  • Живу я здесь
  • 2955
  • 388 / 4
Re: Внедрение AJAX в модуле
« Ответ #7 : 20.08.2017, 14:57:26 »
Весь класс , а не один метод класса! (всё содержимое файла helper.php)
*

alpha_ru

  • Захожу иногда
  • 85
  • 0 / 0
Re: Внедрение AJAX в модуле
« Ответ #8 : 20.08.2017, 15:00:50 »
Добавил в предыдущий пост.
*

Aleks.Denezh

  • Живу я здесь
  • 2955
  • 388 / 4
Re: Внедрение AJAX в модуле
« Ответ #9 : 20.08.2017, 15:10:11 »
Почему идет вызов в JavaScript: module: 'kom',
если у вас модуль class ModKomentHelper  { 

Именование классов должно быть строгим
вы обращаетесь например так:
index.php?option=com_ajax&module=kom&format=json (эту строку можно вбить даже в браузере и посмотреть что покажет браузер)
то компонент com_ajax будет искать модуль mod_kom, подключать по пути /modules/mod_kom/helper.php хелпер и вызывать строго класс modKomHelper, а у Вас класс ModKomentHelper
*

alpha_ru

  • Захожу иногда
  • 85
  • 0 / 0
Re: Внедрение AJAX в модуле
« Ответ #10 : 20.08.2017, 15:23:52 »
проверил стоку:
Спойлер
[свернуть]
В виде сделал так:
Спойлер
[свернуть]
*

alpha_ru

  • Захожу иногда
  • 85
  • 0 / 0
Re: Внедрение AJAX в модуле
« Ответ #11 : 20.08.2017, 15:29:14 »
alert выдает ошибку: undefined.
*

Aleks.Denezh

  • Живу я здесь
  • 2955
  • 388 / 4
Re: Внедрение AJAX в модуле
« Ответ #12 : 20.08.2017, 15:30:22 »
В message у вас:
"message":"Модуль mod_koment не опубликован, у вас остутствуют права доступа на модуль или модуль не назначен для текущего пункта меню",
Смотрите ещё некоторые особенности:
1. Модуль должен быть опубликован
2. Если модуль опубликован только на определенных страницах то нужно ещё передать Itemid текущей страницы...
Я сейчас вам напишу код как лучше всё это делать, и как красивее!
*

Aleks.Denezh

  • Живу я здесь
  • 2955
  • 388 / 4
Re: Внедрение AJAX в модуле
« Ответ #13 : 20.08.2017, 15:39:42 »
1. Форма:
Спойлер
[свернуть]

helper.php
Спойлер
[свернуть]
« Последнее редактирование: 20.08.2017, 15:43:09 от Aleks.Denezh »
*

alpha_ru

  • Захожу иногда
  • 85
  • 0 / 0
Re: Внедрение AJAX в модуле
« Ответ #14 : 20.08.2017, 16:14:23 »
выдается ошибка
0 - syntax error, unexpected 'new' (T_NEW)
Код
if ( trim( $form['koment'] ) === '' ) throw  new Exception( 'Вы не ввели текст', 404 );
*

Aleks.Denezh

  • Живу я здесь
  • 2955
  • 388 / 4
Re: Внедрение AJAX в модуле
« Ответ #15 : 20.08.2017, 16:23:57 »
может что то не так скопировали? у меня всё отлично работает! Я проверил код перед тем как постил!
*

alpha_ru

  • Захожу иногда
  • 85
  • 0 / 0
Re: Внедрение AJAX в модуле
« Ответ #16 : 20.08.2017, 17:20:45 »
Спасибо, модуль запустился. Проблема с кешем. Данные появляются только после чистки кеша. Как это побороть?
*

Aleks.Denezh

  • Живу я здесь
  • 2955
  • 388 / 4
Re: Внедрение AJAX в модуле
« Ответ #17 : 20.08.2017, 17:26:22 »
Спасибо, модуль запустился. Проблема с кешем. Данные появляются только после чистки кеша. Как это побороть?
Какого рода данные?
*

alpha_ru

  • Захожу иногда
  • 85
  • 0 / 0
Re: Внедрение AJAX в модуле
« Ответ #18 : 20.08.2017, 17:33:47 »
На странице список вопросов(типа комментариев) с формой. Запрос отправляется, но сразу не появляется, только после сброса кеша.
*

Aleks.Denezh

  • Живу я здесь
  • 2955
  • 388 / 4
Re: Внедрение AJAX в модуле
« Ответ #19 : 20.08.2017, 18:39:59 »
Аяксом забирать записи и форму!
*

alpha_ru

  • Захожу иногда
  • 85
  • 0 / 0
Re: Внедрение AJAX в модуле
« Ответ #20 : 21.08.2017, 09:17:16 »
Добавил код:
Спойлер
[свернуть]
Новая запись не добавляется, а в предыдущей пропадают данные, остается пустой див. После очистки кеша появляется новая запись.
*

ProtectYourSite

  • Завсегдатай
  • 1069
  • 63 / 4
  • Безопасность вебсайтов
Re: Внедрение AJAX в модуле
« Ответ #21 : 21.08.2017, 09:38:38 »
Кеша джумлы?  Поставьте в модуле не кешировать.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не отображаютя языки в модуле

Автор vipex

Ответов: 1
Просмотров: 27
Последний ответ 06.12.2017, 14:43:20
от NewUsers
Адрес изображения в модуле при открытии материала в блоге категории меняется

Автор leonid.m

Ответов: 4
Просмотров: 85
Последний ответ 05.12.2017, 01:36:35
от leonid.m
Обновился 3.4.1 до 3.8.1, перестал работать AJAX

Автор Zhanadil1509

Ответов: 1
Просмотров: 65
Последний ответ 10.11.2017, 10:31:23
от ProtectYourSite
внедрение микроразметки на сайт

Автор mami_

Ответов: 8
Просмотров: 180
Последний ответ 02.11.2017, 11:04:29
от Septdir
Ограничение количества символов в модуле

Автор PavelK

Ответов: 2
Просмотров: 73
Последний ответ 15.10.2017, 16:15:08
от draff