Контактная информация            Баг трекер            Предложение хостинг-провайдерам

Использование форм в Open Constructor / отправка письма с прикреплeнным файлом

Тимур Вафин Автор: Тимур Вафин
Дата: 25 сентября 2007
Рубрика: How-to

В дополнение к статье «Использование форм в Open Constructor», расскажу об отправке писем с прикреплeнным файлом.

Создание HTML кода и настройка объекта описаны в той статье, поэтому не буду повторяться.

В качестве примера можно взять такую форму:

 

 

Чтобы создать этот код формы открываем во вкладке «Шаблоны» Разное / Включение шаблона, создаем шаблон и вписываем в него HTML код формы.

 

<tr>
<td valign="top"><b>Приложите файл с резюме</b></td>
<td>
  <input name="attachment" class="bordered_1px" type="file"><br />
  <span class="form">DOC, ODT или PDF, размер не более 500Кб</span>
  {if $smarty.get.failed.attachment}
   <div class="error">{$smarty.get.failed.attachment}</div>
  {/if}
</td>
</tr>

 

Хочу обратить ваше внимание на то что, если форма отправляет письмо с прикрепленным файлом, нужно указать enctype в таге <form>:

 

<form action="/contact-us/submit/?cid={$cid}" method="post" enctype="multipart/form-data">

 

В объекте «Разное / Отправка писем» указываем несколько параметров.

 

 

В поле «Тип» выбираем значение File.

В поле «Тип файла» обязательно указываем расширения файлов, через запятую без пробелов, которые будут разрешены для отправки вместе с письмом, иначе вы не сможете закачать файл.

В поле «Размер» также обязательно указываем минимальный и максимальный размер отправляемого файла.

Ещe хочу обратить ваше внимание на чек-бокс в левом нижнем углу — если его отметить, загрузка файла пользователем сайта будет обязательна. То есть если вдруг посетитель сайта не укажет файл для отправки, попытается отправить файл с неразрешенным расширением или же файл не будет подходить по размерам, то будет показано сообщение из поля «Ошибка».

Реализовать отправку письма с несколькими прикрепленными файлами возможно 2 способами:


Первый способ

Создать HTML код с несколькими полями для прикрепления файлов и в объекте настроить их все по отдельности. Для этого в объекте отправки письма нажимаем кнопку «Добавить файл» и настраиваем его. Преимущество этого способа состоит в том, что можно настраивать каждый по-разному.


Второй способ

Объясним на примере. Необходимо вместе с сообщением отправить несколько идентичных файлов, но точное их количество неизвестно.

 

 

Как и в предыдущем примере описывать подробно создание HTML кода и настройку объекта не буду.

 

<div id=”attach”>
<p>Вы можете отправить нам дополнительную информацию о Вашем проекте.<br>
При желании Вы можете отправить 5 файлов. Размер каждого файла не должен превышать 1 MB.</p>
<div><input name="attachment[]" class="bordered_1px" type="file"></div>
<a href="javascript: addFile();" id="addmore" title="Добавить еще один файл">Добавить еще один файл</a>
</div>

 

Далее в объекте указываем все параметры. А в поле «Тип» выбираем значение Files. Это означает что в поле attachment нашей формы будет передан массив файлов.

 

 

Обратите внимание на то, что при выборе «Тип» Files поле с загрузкой файла нельзя сделать обязательным для заполнения.

Преимуществом данного способа является то, что можно закачать несколько файлов с одинаковыми характеристиками (размер, расширение), отвечающими всем требованиям настройки объекта.

Комментарии

RSS RSS

Добавить комментарий

Имя:     Email:
Комментарий:
Введите символы, которые видите на картинке.
Если символы неразборчивы, кликните по картинке несколько раз.