Новости Joomla

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

Exciter

  • Захожу иногда
  • 155
  • 9 / 0
  • Теория + практика
Скачал плагин JCaptcha отсюда http://code.google.com/p/joomla15captcha/
Поставил патчи. Настроил. Всё отлично заработало.
Но у меня на сайте есть страницы с самописными формами.
Прикрутил вывод CAPTCHA в форму на странице с помошью RD Add PHP (run-digital.com)

файл owncaptcha.php
Код
<?php
$dispatcher = &JDispatcher::getInstance();
                $results = $dispatcher->trigger( 'onCaptchaRequired', array( 'user.contact' ) );
                if ($results[0])
                $dispatcher->trigger( 'onCaptchaView', array( 'user.contact', 0, '', '<br />' ) );
?>
Капча вывелась в форму без проблем.

Далее возник вопрос - как проверить капчу?
Форма передаёт данные постом ($POST) в mysendmail.php (там я выполняю свои действия по отправке заказа на почту нужным адресам)
Код
<?
jimport( 'joomla.event.dispatcher' );
jimport( 'joomla.user.user' );
                $dispatcher     = &JDispatcher::getInstance();
                $results = $dispatcher->trigger( 'onCaptchaRequired', array( 'user.contact' ) );
                if ( $results[0] ) {
                        $captchaparams = array( JRequest::getVar( 'captchacode', '', 'post' )
                        , JRequest::getVar( 'captchasuffix', '', 'post' )
                        , JRequest::getVar( 'captchasessionid', '', 'post' ));
                        $results = $dispatcher->trigger( 'onCaptchaVerify', $captchaparams );
                        if ( ! $results[0] ) {
                                // *** start your code ***
                                JError::raiseWarning( 'CAPTHCA', JText::_( 'CAPTCHACODE_DO_NOT_MATCH' ) );
                                // *** end your code ***
echo '<br /><a href="#" onclick="history.back();">Вернуться назад к заполненной форме</a>';
                        }
else { // Captcha is Valid!
}
}
Получаю Fatal error: Call to undefined function jimport()

Но если формой передать инфу какойто странице Joomla, например на /index.php?option=com_content&amp;Itemid=64&amp;id=132&amp;lang=ru&amp;view=article
и уже в нём вызвать mysendmail.php при помощи плагине RD Add PHP, то всё срабатывает, но тогда JRequest::getVar( 'captchacode', '', 'post' ) не получает параметров, т.к. RD Add PHP не передаёт в вызываемый файл параметры. А следовательно проверка CAPTCHA не проходит.

Вобщем руками никак JCaptcha к своей форме прикрутить что-то не получилось.
Если ктото сталкивался - подскажите.

P.S. Компоненты форм не могу использовать (слишком много форм придётся переписывать).
« Последнее редактирование: 21.02.2010, 14:49:10 от Exciter »
*

kupala

  • Новичок
  • 3
  • 0 / 0
Получаю Fatal error: Call to undefined function jimport()

Следовательно и код CAPTCHA не отработает.
Значит, тебе в свой модуль нужно вставить функцию CAPTCHA из captca.php и позаботиться о приеме параметров из вызывающей формы. Правда, не знаю как ты будешь там сражаться с сессией.
*

Exciter

  • Захожу иногда
  • 155
  • 9 / 0
  • Теория + практика
Есть ли гдето пример практической реализации?

И тишина...
« Последнее редактирование: 01.03.2010, 19:28:49 от Exciter »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как прикрутить recaptcha к модулю?

Автор murat

Ответов: 27
Просмотров: 4346
Последний ответ 09.04.2015, 21:45:46
от murat
AJAX rotator слайдер картинок (прикрутить ссылку к каждой картинке)

Автор Hufflepuff

Ответов: 0
Просмотров: 1331
Последний ответ 03.06.2013, 11:49:22
от Hufflepuff
как прикрутить модуль прокрутки imagescroll в шаблон

Автор serdr

Ответов: 10
Просмотров: 2256
Последний ответ 01.09.2010, 11:23:59
от serdr