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

Maxum

  • Давно я тут
  • 689
  • 32 / 1
чем поделиться, формой?
форму можно взять абсолютно любую более-менее вменяемую...

Подскажите, пожалуйста, JoomShopping работает как Каталог, нужно в категорию и в товар поместить кнопку "Заказать", при нажатии на которую будет появляться всплывающее окно.
Можно ли для этого использовать aicontactsafe? В этой форме создаются разные профайлы, вот один использую как форму обратной связи, а другой (с другими полями) хотелось бы сделать всплывающим окном при нажать кнопки "Заказать".
*

ELLE

  • Глобальный модератор
  • 4510
  • 893 / 0
Можно ли для этого использовать aicontactsafe?
Можно сделать с помощью любой формы.
форма в окне
модуль в шаблоне Jshop
*

Maxum

  • Давно я тут
  • 689
  • 32 / 1
Можно сделать с помощью любой формы...

Спасибо за ссылки!
По поводу обсуждаемой в теме формы:
IE9 - не происходит проверка e-mail. То есть, если поле вообще не заполнено, появляется сообщение "Пожалуйста, заполните все поля формы перед отправкой." А если оно заполнено, хоть одной кириллицей, форма отправляется.
Opera 11 - если нет символа @, выдаётся ошибка. Если есть символ, то адрес может быть таким вшмркшло@вакп
Форма отправляется, да же без точки.
Аналогично в Safari 5 - форма отправляется с адресом вмиеке@ - нет проверки на кириллицу и точку в адресе.
Google 21 - проверяет кириллицу и @, но нет проверки на точку в email. С адресом fbbynt@dvebtb форма отправляется.

Кто тут умница-программист, исправьте, пожалуйста, если это возможно :)
« Последнее редактирование: 28.10.2012, 09:33:59 от Maxum »
*

ELLE

  • Глобальный модератор
  • 4510
  • 893 / 0
E-mail я отрезала, мне нужен только телефон..

*

Maxum

  • Давно я тут
  • 689
  • 32 / 1
А у меня телефон необязательное поле. А вот email нужен.
*

gurkin

  • Осваиваюсь на форуме
  • 26
  • 4 / 0
Есть ли защита от sql инъекций в приведенных решениях?
*

kirbal

  • Новичок
  • 1
  • 0 / 0
Друзья, помогите!
Как сделать так, чтобы поле электронной почты и сообщения было не обязательным? Хочу сделать а-ля заказ в один клик!
*

Biss

  • Давно я тут
  • 994
  • 101 / 0
Pups-am Вопрос.
Почему к ссылке добавляется #contactForm при вызове окна с формой?
И вся страница скролит вверх


Уже разобрался, но может кому пригодится.
При использовании шаблона ice .конфликт скриптов (скрипт с формы contactForm и скрипт кнопки наверх)
« Последнее редактирование: 15.04.2013, 23:46:26 от Biss »
*

trzxc

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Если кто-то читает тему и может подсказать. Такая проблема: использую эту форму, но на почту приходит письмо в абракадабра. Сайт в utf-8, как и бд. Скачал файлы processForm.php на комп в Notepad++ переделал кодировку с utf-8 (без BOM) на utf-8. Залил обратно не помогает. Почта на mail.ru. Подскажите, пожалуйста, кто сможет или сталкивался с подобной проблемой. Спасибо!
*

Biss

  • Давно я тут
  • 994
  • 101 / 0
Собственно проблема может быть и не проблемой!
Сколько писем переслал, кодировал и перекодировал, но оставалась подобная проблема. Все манипуляции происходили на работе и, юзалась WIN XP (sp3).
Прихожу домой, сел за комп (установлена уже 7-ка), шлю письмо и проверяю- ВУАЛЯ! Всё нормально и по руски ^-^
*

trzxc

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Собственно проблема может быть и не проблемой!
Сколько писем переслал, кодировал и перекодировал, но оставалась подобная проблема. Все манипуляции происходили на работе и, юзалась WIN XP (sp3).
Прихожу домой, сел за комп (установлена уже 7-ка), шлю письмо и проверяю- ВУАЛЯ! Всё нормально и по руски ^-^
Просто в коде при кодировании  темы письма от кого и т.д. используется:
Код
 $recipient = '=?utf-8?B?'.base64_encode(RECIPIENT_NAME).'?=' . " <" . RECIPIENT_EMAIL . ">";
  $headers = "From: " . '=?utf-8?B?'.base64_encode($senderName).'?=' . " <" . $senderEmail . ">";
  $subject = '=?utf-8?B?'.base64_encode(EMAIL_SUBJECT).'?=';
Но для кодирования самого сообщения ничего не используется:
Код
$message = "
На странице: $url

Задали вопрос по $urlName

Спрашивает: $senderName

E mail: $senderEmail

Вопрос: $message";


*

trzxc

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Просто в коде при кодировании  темы письма от кого и т.д. используется:
Код
 $recipient = '=?utf-8?B?'.base64_encode(RECIPIENT_NAME).'?=' . " <" . RECIPIENT_EMAIL . ">";
  $headers = "From: " . '=?utf-8?B?'.base64_encode($senderName).'?=' . " <" . $senderEmail . ">";
  $subject = '=?utf-8?B?'.base64_encode(EMAIL_SUBJECT).'?=';
Но для кодирования самого сообщения ничего не используется:
Код
$message = "
На странице: $url

Задали вопрос по $urlName

Спрашивает: $senderName

E mail: $senderEmail

Вопрос: $message";

пробовал сделать аналогично..ничего не выходит...может использовать iconv или set_locale?

*

Biss

  • Давно я тут
  • 994
  • 101 / 0
Создал для магазина эту форму но после недели использования надоел спам, капчу еще добавлять надо. Удалил с корнями и поставил S5box.
*

trzxc

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Создал для магазина эту форму но после недели использования надоел спам, капчу еще добавлять надо. Удалил с корнями и поставил S5box.
А как с помощью S5box комментарии сделать? Это же просто вывод любого модуля, по-моему, а что в качестве комментариев посоветуете использовать? Желательно с добавлением фото комментируемого. Спасибо!
*

trzxc

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Создал для магазина эту форму но после недели использования надоел спам, капчу еще добавлять надо. Удалил с корнями и поставил S5box.
Я посмотрел у Вас на сайте модуль Callback, а как его добавлять в определенное место... скриптом...в текст, к примеру
*

Biss

  • Давно я тут
  • 994
  • 101 / 0
S5box я использую для таких функций магазина как: задать вопрос по товару, нашли дешевле?, быстрая покупка и модуль авторизации. Итого 6 позиций ещё в запасе, потом еще можно что-то придумать. На этих кнопках в качестве обратной связи выводится модуль Fox Contact там и CAPTCHA есть.
По модулю Callback тема здесь http://joomlaforum.ru/index.php/topic,193518.0.html
*

aljusha

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
помогите пожалуйста. Заполняю все поля, нажимаю Отправить и вижу сообщение *Отправка сообщения. Пожалуйста подождите....* И сообщение висит часами...
*

FIORD_CMS

  • Захожу иногда
  • 119
  • 3 / 0
В предложенном варианте есть одно слабое место в файле processForm.php, которое открывает некорректный доступ извне (убедился многократно на своем сайте). Поэтому надо везде вместо строк типа
Код
$senderName = $_POST['senderName'];
использовать
Код
$senderName = JRequest::getVar('senderName', 'Unknown user', 'post', 'string');

И еще одно дополнение. Попробовал добавить вариант CAPTCHA. В качестве образца взял решение http://myrusakov.ru/kapcha-php.html . После небольших доработок работает.

 
« Последнее редактирование: 21.10.2013, 12:40:41 от FIORD_CMS »
*

FIORD_CMS

  • Захожу иногда
  • 119
  • 3 / 0
Вот вариант (только измененные или добавленные файлы) с простой капчей (проверочным кодом) и небольшими доработками.
Файл captcha.php (так же как и processForm.php) и папку fonts надо положить в корень сайта.
Кроме того, надо еще добавить несколько строк в файл \components\com_jshopping\lang\ru-RU.php:
Код
define('_JSHOP_CONTACTFORM_WRONGCAPCHA','Неправильный проверочный код. Проверьте и попробуйте снова.');
define('_JSHOP_CONTACTFORM_VERIFICATION_CODE','Проверочный код');
define('_JSHOP_CONTACTFORM_ENTER_VERIFICATION_CODE','Введите проверочный код с картинки');

Еще небольшая правка (одна цифра 43) нужна в файле \components\com_jshopping\css\default.css, чтобы проверочный код не вылезал из формы:
Код
#contactForm {
  width: 40em;
  height: 43em;
  padding: 0 1.5em 1.5em 1.5em;
  margin: 0 auto;
}


*

arevuare

  • Новичок
  • 3
  • 0 / 0
Люди! Ну кто-нибудь решил-таки проблему с кодировкой?

У меня: файл processForm.php в UTF-8 (без BOM), то: в теле письма всё так:

Код
На странице: http://test.belss.by/index.php/katalog/product/view/1/1
Задали вопрос по Бензогенератор
РЎРїСЂР°С?ивает: Р˜РіРѕСЂСЊ
E-mail: arevuare@mail.ru
Вопрос: ыв пывап вап

хотя в полях от кого и тема (в предпросмотре письма) - на русском

а если файл processForm.php в ANSI, то: в теле письма так:

Код
На странице: http://test.belss.by/index.php/katalog/product/view/1/1
Задали вопрос по Бензогенератор
Спрашивает: Р˜РіРѕСЂСЊ
Email: arevuare@mail.ru
Вопрос: c d sdf ывавы ыва

в полях от кого и тема (в предпросмотре письма) - аброкадабра
*

FIORD_CMS

  • Захожу иногда
  • 119
  • 3 / 0
Хотя вариант работает, но так и не удалось защититься от "чужой информации", которая часто приходит вместо вопроса по продукту. Поэтому реализовал этот же функционал с помощью хорошо работающего и достаточно мощного компонента формы обратной связи aicontactsafe http://extensions.joomla.org/extensions/contacts-and-feedback/contact-forms/7901. Хотя форма вопроса выводится пока и не в модальном окне, зато в таком варианте задействуются все возможности aicontactsafe (например, ведется история обмена сообщениями  с клиентом,...., в едином для сайта стиле формы обратной связи).
Идея следующая: при вызове компонента из ЖШ передать ему два дополнительных параметра: subject и subject_link.
После установки aiContactSafe и создания формы (в терминах aicontactsafe - профайла и в моем случае с номером 1, pf=1)  обратной связи (рис.) надо сделать всего лишь несколько правок. Все эти правки вы легко увидите в исходных текстах во вложении по ключевому слову subject
1. в файле /components/com_aicontactsafe/views/message/tmpl/message.xml   добавляем два новых поля subject и subject_link
2. в файле /components/com_aicontactsafe/views/message/view.html.php добавлены строки, которые позволяют из  параметров subject= и subject_link= взять их значения и поместить в форму обратной связи
3. в components/com_jshopping/templates/default/product/product_default.php добавить строку (здесь Itemid=536 задает ссылку на форму обратной связи, которую вы должны изменить для своего сайта)
Код:

 <a title="<?php print _JSHOP_ASK_QUESTION ?>" href="<?php echo "http://".$_SERVER['SERVER_NAME']."/index.php?option=com_aicontactsafe&view=message&layout=message&pf=1&redirect_on_success=&searchword=&Itemid=536&lang=ru&subject_link="."http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];?><?php print '&subject='.htmlspecialchars($this->product->name);?>">  <?php print _JSHOP_ASK_QUESTION ?> <?php print $this->product->name ?> </a>  

Эта строка берет значения имени товара и ссылки на него и передает в форму обратной связи.
*

chakivetal

  • Захожу иногда
  • 51
  • 0 / 0
  • Самомученик
Кому нужно при помощи модуля...

...\components\com_jshopping\templates\default\product_default.php

Вставить куда нужно...
Код
<a href="#contactForm">Задать вопрос</a>

в конце файла
Код
<!-- Задать вопрос -->
<script>
var messageDelay = 2000;
jQuery( init );

function init() {
jQuery('#contactForm').hide().submit( submitForm ).addClass( 'positioned' );
jQuery('a[href="#contactForm"]').click( function() {
jQuery('#window').fadeTo( 'slow', .8 );
jQuery('#contactForm').fadeIn( 'slow', function() {
jQuery('#senderName').focus();
} )
return false;
} );
jQuery('#cancel').click( function() {
jQuery('#contactForm').fadeOut();
jQuery('#window').fadeOut();
} );
jQuery('#contactForm').keydown( function( event ) {
if ( event.which == 27 ) {
jQuery('#contactForm').fadeOut();
jQuery('#window').fadeOut();
}
} );
}

function submitForm() {
var contactForm = jQuery(this);
if ( !jQuery('#senderName').val() || !jQuery('#senderEmail').val() || !jQuery('#message').val() ) {
jQuery('#incompleteMessage').fadeIn().delay(messageDelay).fadeOut();
contactForm.fadeOut().delay(messageDelay).fadeIn();
} else {
jQuery('#sendingMessage').fadeIn();
contactForm.fadeOut();
jQuery.ajax( {
url: contactForm.attr( 'action' ) + "?ajax=true",
type: contactForm.attr( 'method' ),
data: contactForm.serialize(),
success: submitFinished
} );
}
return false;
}
</script>

<div id="contactForm">
<input type="button" id="cancel" name="cancel" value="" />
<?php
$pos = "contactForm";
$modules =& JModuleHelper :: getModules( $pos );
foreach ( $modules as $module) {
echo JModuleHelper :: renderModule( $module );
}
?>
</div>
<!-- /Задать вопрос -->

в CSS (солим по вкусу)...
Код
/* Задать вопрос */
#window {
width:100%;
height:100%;
position:fixed;
top:0;
left:0;
background-color:#000;
display:none;
z-index:9000;
}
#contactForm, .statusMessage{
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px; 
  border-radius: 10px;
}
#contactForm, .statusMessage {
  color: #666;
  background-color: #ebedf2;
  background: -webkit-gradient( linear, left bottom, left top, color-stop(0,#dfe1e5), color-stop(1, #ebedf2) );
  background: -moz-linear-gradient( center bottom, #dfe1e5 0%, #ebedf2 100% ); 
  border: 1px solid #aaa;
  -moz-box-shadow: 0 0 1em rgba(0, 0, 0, .5);
  -webkit-box-shadow: 0 0 1em rgba(0, 0, 0, .5);
  box-shadow: 0 0 1em rgba(0, 0, 0, .5);
}
#contactForm {
  width: 40em;
  height: 33em;
  padding: 0 1.5em 1.5em 1.5em;
  margin: 0 auto;
width:350px;
height:380px;
padding: 0 1.5em 1.5em 1.5em;
margin: 0 auto;
z-index:9999;
}
#contactForm.positioned {
  position: fixed;
  top:0;
  bottom:0;
  left:0;
  right:0;
  margin-top:auto;
  margin-bottom:auto;
  background-color:#fff;
}
#contactForm *:focus {
  border: 1px solid #d70000;
  outline: none;
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
}
#contactForm #cancel:focus {
  border: none;
}
#cancel:hover{background:url(/images/cloze.png) top left;}
#cancel{width:36px;height:36px;background:url(/images/cloze.png) bottom left;position:absolute;top:-15px;right:-15px;border:none;}
/* /Задать вопрос */

в папку .../images/ закинуть картинку для кнопки - background:url(/images/cloze.png)

Вставляем модуль в позицию contactForm ($pos = "contactForm";)


Прошу подсказать лишние части в скрипте...
*

jeka_808

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
А я сделал по другому (может Неправильно конечно).
Мне комментарии к товару не нужны, и я переделал их под "Задать вопрос по товару".
Письмо на почту приходит с описанием в каком товаре был задан вопрос, и в админке можно все это видеть.
Можно посмотреть здесь
*

Tonus1

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Все сделал по инструкции в начале, но мне просто выдает "Возникли неполадки. Попробуйте снова." Что делать? :(
*

Tonus1

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
А все, нашел, просто надо мыло свое поставить было.
*

Single92

  • Захожу иногда
  • 134
  • 2 / 0
на почту для домена почему то не приходит, кто может подсказать в чем дело или как настроить?

если обычный мейл то нормально отправляется, на почту домена (на ЯНДЕКСЕ ), нет((

извиняюсь если не уместен вопрос, Но буду очень благодарен за помощь.

Заранее спасибо!
*

Single92

  • Захожу иногда
  • 134
  • 2 / 0
Elle, ну зачем вам эта CAPTCHA? ее абсолютно не сложно прикрутить, но вреда от нее больше чем пользы. сделайте input type="text" name="f_name" например, скройте его css-ом и проверяйте на непустое значение. этого будет достаточно для 99% ботов

Здравствуйте.

не подскажите как это поле проверять ?

не так?
Код: php
if($_REQUEST['pole'] != null) echo 'поле не пустое';
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Код: php
if($_REQUEST['pole']) echo 'поле не пустое';
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Single92

  • Захожу иногда
  • 134
  • 2 / 0
dmitry_stas, спасибо
*

Single92

  • Захожу иногда
  • 134
  • 2 / 0
что то не получается поставить запрет на отправку письма если, скрытое поле заполнено.

подскажите пожалуйста.

буду благодарен.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Добавление класса к товару если нет в наличии

Автор xcasperss

Ответов: 19
Просмотров: 835
Последний ответ 15.12.2018, 09:14:32
от xcasperss
Задать описание атрибута в backend

Автор FIORD_CMS

Ответов: 2
Просмотров: 955
Последний ответ 13.04.2015, 22:53:39
от FIORD_CMS
Старая цена (скидка) - как задать в процентах?

Автор lexrider

Ответов: 3
Просмотров: 1086
Последний ответ 30.03.2015, 22:02:04
от nevigen
Плагин добавления краткого описания к товару в заказе

Автор beagler

Ответов: 0
Просмотров: 1247
Последний ответ 13.07.2014, 00:35:46
от beagler
Вопрос по форме логина/регистрации

Автор Vitos

Ответов: 13
Просмотров: 2253
Последний ответ 13.03.2013, 20:28:11
от denben777