Комментарии к статье:
Улучшаем обработчик формы обратной связи
Дата: 11 марта 2009
53899
42
-
Комментарии (42)
- Сайт
http://biznesguide.ru/view_post.php?id=32
Рекомендую ознакомиться! А в этой статье я лишь рассказываю, как можно улучшить сам обработчик этой формы!
Уважаемый Иван Шамшурин, помогите пожалуйста бедному бедолаге. Все работает, но только он не проверяет заполненность полей со звездочкой. URL сайта я написал - обртаная форма у меня предназначена для подачи заявлений - ну там увидите. Помогите пожалуйста третью ночь не сплю. Могу добавить, что на хосте поддерживается php 5.x
Заранее благодарю.
Спасибо прекрасно работает.
Единственное, форма не хочет принимать емаилы с - К примеру вариант info@robot-robot.
Пишет, что неправильный формат. Можно, учесть и такие адреса и как это исправить?
Да, как еще можно сделать, чтобы после успешной отправки, была переадресация на свою страницу успеха? Может вообще переадрисововать на вс свои страницы результатом- белый цвет не особо вписывается.
C Уважением,
Александр Сапунов
http://biznesguide.ru/files/send_contact.zip
ВСЕ РАБОТАЕТ!
СПАСИБО!!!!
Над Вашей формой не стал, просто заново переписал: так и не понял, что за шпильку Вы туда вставили.
Впрочем, Бог Вам судья: каждый решает это для себя по-своему.
Все работает, так что спасибо. Остался один вопрос: форма после отправки должна очищаться, ведь так? ИЛи это тоже ствтья для заработка?
Лучше сразу все писать своими ручками, а не копировать текст с сайта, т.к. на сайте некоторые символы могут отображаться не так как нужно!
Данная статья - это лишь общий пример. Я старался показать, как вообще происходит отправка сообщений. Естественно её необходимо доробатывать!
А для того, чтобы форма после отправки очищалась необходимо делать редирект на эту страницу!
Удачи!
$v = mail("ariabuonabiz@gmail.com","Заказ с сайта","Модель : $model Цвет :$color Кол.:$num Имя : $name Фамилия : $secondname Телефон : $phone Е-маил : $email Скайп : $skype Город : $city Другая инфо. : $text ","Content-type:text/plain; charset = windows-1251 ");
if ($v =="true") {echo "Ваш заказ успешно отправлен.";}
?>
заране буду благодарен
if (isset($_POST['name'])) {$name = $_POST['name']; if ($name == '') {unset($name);}}
И только после этого переменная $name будет доступна в Вашем обработчике! Так необходимо проделать со всеми переменными!
Могу посоветовать мой "Мастер создания форм".
Все детали здесь:
http://form-master.ru
рассылать вруную письма с комерчиским придложением вот форма, как кней приделать обработчик
<form action="send.php" name="invite" onsubmit="return check(invite)" method="POST">
<table width="400" border="0" cellspacing="0" cellpadding="0" align="center" valign="top" bgcolor="#ffffff" style="font-family: Arial; font-size: 10pt;">
<tr>
<td colspan="2" align="center"> </td>
</tr>
<tr>
<td colspan="2" align="center"><strong><font color="#1A47E5"><strong><big>Форма розсылки писем.</big></strong></font></strong></td>
</tr>
<tr>
<td colspan="2" align="center"> </td>
</tr>
<tr>
<td width="50%" align="right">Мое имя </td>
<td align="left"><input type="Text" name="subname" class="input" value=""></td>
</tr>
<tr>
<td align="right">Мой email </td>
<td align="left"><input type="Text" name="subemail" class="input" value=""></td>
</tr>
<tr bgcolor="#FFFFFF"><td colspan="2"> </td>
</tr>
<tr>
<td colspan="2" align="center">
<font size="1" color="#808080">тема</font><br>
<input type="Text" name="subject" class="input" value="Bissnes" size="50"><br><br>
<font size="1" color="#808080">текст </font><br>
<textarea cols="50" rows="15" name="invitemessage" class="input">
gggggg
</textarea>
<br><br>
</td>
</tr>
<tr>
<td align="right"> </td>
<td align="center"><strong><font color="#000080">введите адреса</font></strong></td>
</tr>
<tr>
<td align="right"> </td>
<td align="center"> &
Что надо дописать чтоб он не отправлял при неправильном email адресе??
на
/* Проверяем спам */
if(preg_match("/http/i", $message)){
die("<p><b>Это спам!</b> Если это не спам - убери все ссылки сайтов из своего сообщения и отправь заново.</p>");
}
/* Проверяем спам */
if(preg_match("/http|www|url|href|.ru|.com|.su|.info|.net|.org|.de|txt|sex|диета|тренинг|секс/i", $message)){
die("<p><b>Это спам!</b> Если это не спам - убери все ссылки сайтов из своего сообщения и отправь заново.</p>");
}
Он заархивирован, но архив не открывается
Попыталась встроить код в дизайн сайта. Все сообщения, кроме "Неправильный формат e-mail адреса" выводятся корректно.
http://boltun-spb.ru/pic_yes.gif
А "Неправильный формат email адреса" выводится вот так:
http://boltun-spb.ru/pic_non.gif
Пробовала поставить "echo" вместо "die", но тогда выводятся два сообщения "неправильный формат..." и "Сообщение отправлено"
Подскажите, пожалуйста, как это исправить.
Указал свой адрес:
Содержание письма:
А те самые переменные величины не отображаются. Тестировала и на локальном сервере, и заливала на сайт. Результат одинаковый. Помогите пожалуйста!!!