|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.06.2013, 02:24 | #1 |
Новичок
Джуниор
Регистрация: 29.06.2013
Сообщений: 1
|
Форма обратной связи на сайте
Здравствуйте! Делаю для себя сайт, учусь на ходу так сказать =)
Подскажите пожалуйста, как сделать чтобы после заполнения формы посетителем сайта, всевозможные сообщения (ваше сообщение отправлено, вы ввели неправильный код, или вы ввели неправильный э-мэйл) выводились сверху, над самой формой? Вот мой код Код HTML:
<title>Сообщение отправлено</title> <?php /* Проверяем существуют ли переменные, которые передала форма обратной связи. Если не существуют, то мы их создаем. Если форма передала пустые значения мы их удаляем */ if (isset($_POST['name'])) {$name = $_POST['name']; if ($name == '') {unset($name);}} if (isset($_POST['email'])) {$email = $_POST['email']; if ($email == '') {unset($email);}} if (isset($_POST['body'])) {$body = $_POST['body']; if ($body == '') {unset($body);}} if (isset($_POST['phone'])) {$phone = $_POST['phone']; if ($phone == '') {unset($phone);}} if (isset($_POST['pr'])){$pr = $_POST['pr']; if ($pr == '') {unset($pr);}} if (isset($_POST['captcha'])){$captcha = $_POST['captcha'];} /* Проверяем заполнены ли все поля */ if (isset($name) && isset($email) && isset($body) && isset($pr)) { /* Убираем все лишние пробелы, а также преобразуем все теги HTML в символы*/ $name = htmlspecialchars(trim($name)); $email = htmlspecialchars(trim($email)); $phone = htmlspecialchars(trim($phone)); $body = htmlspecialchars(trim($body)); /* Проверяем правильность ввода email-адреса */ if(!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $email)) { echo "<p>Неправильный формат e-mail адреса!</p>"; } /* Проверяем правильность ввода капчи */ if ($captcha == $pr) { /* Формируем сообщение */ $address = "maxim@evac-plan.ru"; $sub = "Заказ с сайта"; $mes = "Заказчик: $name \n E-mail: $email \n Контактный телефон: $phone \n Текст сообщения: $body"; /* Отправка сообщения */ $verify = mail ($address,$sub,$mes,"Content-type:text/plain; charset =UTF-8\r\nFrom:$email"); if ($verify == 'true') { echo "<body bgcolor='609df9'> <div style='margin-top: 30px'><table border='1' width='450' align='center' cellpadding='20' cellspacing='6' bgcolor='white'> <tr> <td> <div style='margin'><div align='center'>Ваше сообщение успешно отправлено! <p>Вернуться на <a href='http://ваш_сайт'><font size='+1'>www.ваш_сайт</font></a></div> <img src='http://ваш_сайт/img/message.jpg'> <p><div align='center'>Я найду его, прочитаю и отвечу вам!</div> <p><div align='right'><i><b>C уважением, Ваши Ф.И.О.</b></i></div> </tr> </td> </table></div>"; } else { echo "Сообщение не отправлено!"; } } else { echo "Вы не правильно ввели сумму чисел с картинки"; } } else { echo "Вы заполнили не все поля!"; } ?> |
07.07.2013, 17:31 | #2 |
LosYear
Форумчанин
Регистрация: 19.06.2009
Сообщений: 695
|
Если я правильно Вас понял, то Вам нужно добавить сверху формы div, который Вы будете показывать только в случае ошибки.
То есть, PHP код:
А вообще, старайтесь хранить, как можно меньше html кода рядом с логикой. Последний раз редактировалось Яр|/||< (^_^); 07.07.2013 в 17:33. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
форма обратной связи | Ol'ga | PHP | 3 | 01.03.2013 12:40 |
форма обратной связи на сайте | lines | Фриланс | 18 | 27.02.2012 05:10 |
Форма обратной связи | Cone | PHP | 9 | 07.12.2011 07:47 |
Форма обратной связи | margo_31 | Помощь студентам | 6 | 20.09.2009 20:38 |
Форма обратной связи | belvision | PHP | 5 | 10.11.2008 16:57 |