Связь С Администрацией
#1
Отправлено 20 Июнь 2012 - 23:03
Например, на странице связи с администрацией есть поля для заполнения: 1. Представьтесь, пожалуйста, 2. Email для обратной связи, 3.Текст сообщения. Так вот как добавить еще одно поле или несколько размером как - 1. Представьтесь, пожалуйста, 2. Email для обратной связи, что бы при получении мною письма все было видно как и с этими 3-мя пунктами.
Спасибо
#2
Отправлено 21 Июнь 2012 - 13:10
<form method="post" action="{FEEDBACK_URL}" class="fastOrderForm" enctype="multipart/form-data" onsubmit="javascript: $('#feedback_message').val($('#feedback_pole1').val() + $('#feedback_pole2').val() + $('#message').val());">
В данном случае добавлены 2 поля - Поле 1 и Поле 2. Теперь добавляем сами элементы:
<label style="font-size: 0.9em;" for="feedback_pole1">Поле 1</label> <input id="feedback_pole1" type="text" name="form[feedback_pole1]" maxlength="50" /> <label style="font-size: 0.9em;" for="feedbaсk_pole2">Поле 2</label> <input id="feedbaсk_pole2" type="text" name="form[feedback_pole2]"/>
Суть в том, что доп. поля склеиваются с основным сообщением.
#3
Отправлено 21 Июнь 2012 - 19:50
kovalevap (21 Июнь 2012 - 13:10) писал:
<form method="post" action="{FEEDBACK_URL}" class="fastOrderForm" enctype="multipart/form-data" onsubmit="javascript: $('#feedback_message').val($('#feedback_pole1').val() + $('#feedback_pole2').val() + $('#message').val());">
В данном случае добавлены 2 поля - Поле 1 и Поле 2. Теперь добавляем сами элементы:
<label style="font-size: 0.9em;" for="feedback_pole1">Поле 1</label> <input id="feedback_pole1" type="text" name="form[feedback_pole1]" maxlength="50" /> <label style="font-size: 0.9em;" for="feedbaсk_pole2">Поле 2</label> <input id="feedbaсk_pole2" type="text" name="form[feedback_pole2]"/>
Суть в том, что доп. поля склеиваются с основным сообщением.
Поменял это:
<form method="post" action="{FEEDBACK_URL}" class="feedbackForm" enctype="multipart/form-data"> На это: <form method="post" action="{FEEDBACK_URL}" class="fastOrderForm" enctype="multipart/form-data" onsubmit="javascript: $('#feedback_message').val($('#feedback_pole1').val() + $('#feedback_pole2').val() + $('#message').val());">
Добавил это:
<label style="font-size: 0.9em;" for="feedback_pole1">Поле 1</label> <input id="feedback_pole1" type="text" name="form[feedback_pole1]" maxlength="50" /> <label style="font-size: 0.9em;" for="feedbaсk_pole2">Поле 2</label> <input id="feedbaсk_pole2" type="text" name="form[feedback_pole2]"/>
Появились дополнительные два поля но немного некоректно стали отобрадаться, не столбиком вниз др. за др., а в строчку..
И при отправке сообщения пользователем, письмо не доходит к администратору сайта.
Спасибо, жду еще помощи.
#4
Отправлено 22 Июнь 2012 - 09:06
#5
Отправлено 22 Июнь 2012 - 11:45
Цитата
<input id="feedback_pole1" type="text" name="form[feedback_pole1]" maxlength="50" />
поставьте тег переноса <br />
Если письмо не доходит до администратора, а при отправке пишется что сообщение успешно отправлено - то тут возможно дело в канале, или в почтовой службе. Возможно через некоторое время письма придут.
#6
Отправлено 22 Июнь 2012 - 12:23
<form method="post" action="{FEEDBACK_URL}" class="feedbackForm" enctype="multipart/form-data">
На это:
<form method="post" action="{FEEDBACK_URL}" class="fastOrderForm" enctype="multipart/form-data" onsubmit="javascript:
$('#feedback_message').val($('#feedback_pole1').val() + $('#feedback_pole2').val() + $('#message').val());">
внимательнее с классом! У меня fastOrderForm, а у Вас стандартный - feedbackForm
#7
Отправлено 24 Июнь 2012 - 12:52
В муках пытаюсь что то поменять.
Сейчас вот что происходит:
1. При отправке сообщенний(при нажатии кнопки "Отправить" в поле "Текст сообщения" автоматически вносится информация из контактных данных, указанных выше. Вопрос - как это исправить что бы в этом поле был только текст сообщения.
2. При получении письма все равно не указывается новое созданное поле( контактный телефон), а только присылается телефон в "тексте письма", так же как при отправке сообщения указанном выше в п. 1 моих вопросов. Соответственно как это поправить?
Я думаю решив первый вопрос, второй решится автоматически
Скрин-шоты происходящего прилагаю.
Вот мой код:
<p id="breadcrumb">Вы здесь: <a href="http://{NET_DOMAIN}/">Главная</a> > <strong>Связь с администрацией</strong></p> <h1>Связь с администрацией</h1> <form method="post" action="{FEEDBACK_URL}" class="fastOrderForm" enctype="multipart/form-data" onsubmit="javascript: $('#feedback_message').val($('#feedback_message').val() + 'Имя:' + $('#feedback_name').val() + ';Почта:' + $('#feedback_еmail').val() + ';Телефон:' + $('#feedback_tel').val() + ';сообщение:' + $('#message').val());"> <div> <input type="hidden" name="hash" value="{HASH}" /> {% IF FORM_SEND_OK %} <h3 class="green">Ваше сообщение успешно отправлено администрации магазина</h3> <a href="http://{NET_DOMAIN}/">Перейти на главную</a> {% ELSE %} {% IF FORM_NOTICE %}<h3 class="red">{FORM_NOTICE | nl2br}</h3><br />{% ENDIF %} <label for="feedback_name">Представьтесь, пожалуйста</label><br /> <input id="feedback_name" name="form[feedback_name]" value="{FORM_FEEDBACK_NAME}" maxlength="50" class="input required" /><br /><br /> <label for="feedback_tel">Контактный телефон</label><br /> <input id="feedback_tel" name="form[feedback_tel]" value="{FORM_FEEDBACK_TEL}" maxlength="50" class="input required" /><br /><br /> <label for="feedback_еmail">Email для обратной связи</label><br /> <input id="feedback_еmail" name="form[feedback_email]" value="{FORM_FEEDBACK_EMAIL}" maxlength="255" class="input required email" /><br /><br /> <label for="feedback_message">Текст сообщения</label> <textarea id="feedback_message" name="form[feedback_message]" cols="100" rows="10" class="required">{FORM_FEEDBACK_MESSAGE}</textarea><br /><br /> <label for="feedback_file">Прикрепить файл</label> <input id="feedback_file" type="file" name="form[assets_file]" value="" /><br /><br /> <input type="submit" class="button_med" value="Отправить"/> {% ENDIF %} </div> </form>
#8
Отправлено 24 Июнь 2012 - 17:58
zhenpoplen (24 Июнь 2012 - 12:52) писал:
Чтобы в поле текста не появлялся весь текст - можно скрыть это поле, а добавить еще одно textarea, как дополноительное.
#9
Отправлено 25 Июнь 2012 - 00:37
kovalevap (24 Июнь 2012 - 17:58) писал:
Чтобы в поле текста не появлялся весь текст - можно скрыть это поле, а добавить еще одно textarea, как дополноительное.
#10
Отправлено 25 Июнь 2012 - 18:48
Цитата
2. При получении письма все равно не указывается новое созданное поле( контактный телефон), а только присылается телефон в "тексте письма", так же как при отправке сообщения указанном выше в п. 1 моих вопросов. Соответственно как это поправить?
Этого сделать нельзя, так как происходит склейка полей.
Как вариант для первого вопроса - это скрытие формы во время отправки.
<form method="post" action="{FEEDBACK_URL}" class="fastOrderForm" enctype="multipart/form-data" onsubmit="javascript: $('#feedback_message').val($('#feedback_message').val() + 'Имя:' + $('#feedback_name').val() + ';Почта:' + $('#feedback_еmail').val() + ';Телефон:' + $('#feedback_tel').val() + ';сообщение:' + $('#message').val());">
меняем на
<form method="post" action="{FEEDBACK_URL}" class="fastOrderForm" enctype="multipart/form-data" onsubmit="javascript: $(this).hide();$(this).after('Идет отправка формы. Пожалуйста, подождите...');$('#feedback_message').val($('#feedback_message').val() + 'Имя:' + $('#feedback_name').val() + ';Почта:' + $('#feedback_еmail').val() + ';Телефон:' + $('#feedback_tel').val() + ';сообщение:' + $('#message').val());">
#11
Отправлено 25 Июнь 2012 - 19:50
Vaccina (25 Июнь 2012 - 18:48) писал:
Как вариант для первого вопроса - это скрытие формы во время отправки.
<form method="post" action="{FEEDBACK_URL}" class="fastOrderForm" enctype="multipart/form-data" onsubmit="javascript: $('#feedback_message').val($('#feedback_message').val() + 'Имя:' + $('#feedback_name').val() + ';Почта:' + $('#feedback_еmail').val() + ';Телефон:' + $('#feedback_tel').val() + ';сообщение:' + $('#message').val());">
меняем на
<form method="post" action="{FEEDBACK_URL}" class="fastOrderForm" enctype="multipart/form-data" onsubmit="javascript: $(this).hide();$(this).after('Идет отправка формы. Пожалуйста, подождите...');$('#feedback_message').val($('#feedback_message').val() + 'Имя:' + $('#feedback_name').val() + ';Почта:' + $('#feedback_еmail').val() + ';Телефон:' + $('#feedback_tel').val() + ';сообщение:' + $('#message').val());">
Всем спасибо. В принципе можно и так работать...Но все же непонятно почему нельзя дополнительное поле сделать основным без склейки полей...немного странно, ведь ка кто основные поля ( Представьтесь, пожалуйста и Email для обратной связи) стали основными. В чем же тогда заключается сложность сделать еще одно или несколько основных полей?,
#12
Отправлено 26 Июнь 2012 - 22:59
#14
Отправлено 25 Октябрь 2012 - 12:20
http://forum.storela...pic/256-кнопки/
А именно - для некоторых товаров кнопка покупки заменяется на кнопку заказа, и при этом ведет на форму обратной связи. Как это работает можно посмотреть например здесь:
http://telesam.net/g...ерами?from=NmU3
нажав на кнопку "Сделать заказ".
Т.к. на используемой форме обратной связи я использую дополнительные поля, то воспользовался методом склейки полей, который описан в данной теме.
Вот мой скрипт:
<form method="post" action="{FEEDBACK_URL}" class="feedbackForm" enctype="multipart/form-data" onsubmit="javascript: $(this).hide();$(this).after('Идет отправка формы. Пожалуйста, подождите...');$('#feedback_message').val( 'Имя: ' + $('#feedback_name').val() + '; Телефон: ' + $('#feedback_tel').val() + '; Почта: ' + $('#feedback_еmail').val() + '; Cообщение: ' + $('#feedback_message').val());">
Все работает. Но сегодня случайно заметил одну проблему с этим кодом. Если не заполнить какое-либо из первых полей, то при отправке все зависает. Видим надпись 'Идет отправка формы. Пожалуйста, подождите...', а дальше ничего не происходит.
Вопрос: как это можно побороть? На обязательности заполнения полей можно не настаивать. Просто нужно отправить то, что было заполнено пользователем.
Спасибо!
#15
Отправлено 26 Октябрь 2012 - 13:18
#16
Отправлено 15 Апрель 2014 - 09:54
Задача - не заставлять заполнять это поле.
И еще один вопрос: добавила просто 2 доп.поля в форму. Форма отправляется, в письме данные из этих полей прописаны в пункте "Дополнительная информация". У вас что-то изменилось со времен создания этой темы и теперь склейку полей делать не нужно?
#17
Отправлено 15 Апрель 2014 - 15:10
1. для строчки с e-mail задала style="display:none;"
2. в самом поле заменила значение value на e-mail нашего магазина
Теперь e-mail всегда заполнен, а поле никто не видит
#18
Отправлено 16 Апрель 2014 - 05:53
Цитата
<input name="form[phone]" value="{FORM_PHONE}" />
На почту в письме придёт вот такая информация:
Текст сообщения:
Тестовый текст
Дополнительная информация:
phone: +7123123123
Можно указывать и название на русском, например так:
<input name="form[Телефон]" value="{FORM_ТЕЛЕФОН}" />
в этом случае на почту придёт текст:
Дополнительная информация:
Телефон: +7123123123
Прошу обратить внимание, на то, что переменные с пробелами не поддерживаются, например {FORM_ТЕЛЕФОН КЛИЕНТА МАГАЗИНА} не обрабатываются шаблонизатором. Иными словами поле
<input name="form[Телефон клиента]" value="{FORM_ТЕЛЕФОН КЛИЕНТА}" />
будет при загрузке формы в поле вставлять этот текст по умолчанию:
{FORM_ТЕЛЕФОН КЛИЕНТА}
для того чтобы писать длинные тексты названий с пробелами используйте вместо пробелов символы нижнего подчёркивания, вот эти: _
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных