Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Помогите сделать переадресацию. Форма отправки писем

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
VitEls
Отправлено: 23 Января, 2015 - 12:39:08
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Янв. 2015  


Помог: 0 раз(а)




Помогите сделать переадресацию. Форма отправки писем

Приветствую всех. Проблема следующая:

Есть форма отправки на сайте:

PHP:
скопировать код в буфер обмена
  1.  
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  6. <title>Обратная связь</title>
  7. </head>
  8. <body >
  9. <?PHP
  10. if (isset($_POST['name'])) {$name = $_POST['name'];}
  11. if (isset($_POST['email'])) {$email = $_POST['email'];}
  12. if (isset($_POST['mess'])) {$mess = $_POST['mess'];}
  13. if (isset($_POST['a'])) {$a = $_POST['a'];}
  14. if (isset($_POST['b'])) {$b = $_POST['b'];}
  15. if (isset($_POST['sum'])) {$sum = $_POST['sum'];}
  16.  
  17. if (empty($name))//Проверка ввода имени
  18. {
  19. echo "<b>Не указано имя!<p>";//Если не введено имя, выводим сообщение
  20. echo "<a href=http://copyels.ru/#contact>Вернуться к заполнению формы</a>";
  21. }
  22. else
  23. if (empty($email))//Проверка ввода email
  24. {
  25. echo "<b>Не указан e-mail!<p>";
  26. echo "<a href=http://copyels.ru/#contact>Вернуться к заполнению формы</a>";
  27. }
  28. else
  29. if (empty($mess))//Проверка ввода текста сообщения
  30. {
  31. echo "<b>Сообщение не написано!<p>";
  32. echo "<a href=http://copyels.ru/#contact>Вернуться к заполнению формы</a>";
  33. }
  34. else
  35. {
  36. $s = $a + $b;//Присваиваем переменной $s значение суммы a+b
  37. {
  38. $to = "v.els@bk.ru"; //Укажите ваш адрес электронной почты
  39. $headers = "Content-type: text/plain; charset = utf-8";
  40. $subject = "Сообщение с сайта-визитки";
  41. $message = "Имя отправителя: $name \nЭлектронный адрес: $email \nСообщение: $mess";
  42. $send = mail ($to, $subject, $message, $headers);
  43. if ($send == 'true')
  44.  
  45. {
  46. echo "<b>Ваше сообщение успешно отправлено! Совсем скоро я свяжусь с Вами и мы обсудим все вопросы. <p>";
  47.  
  48. }
  49. else
  50. {
  51. echo "<p><b>Сообщение не отправлено. Приносим свои извинения.";
  52. echo "<p><b>Попробуйте повторить отправку позже.";
  53. }
  54. }
  55. }
  56. ?>
  57. </body>
  58.  



Как сделать так, чтобы после отправки сообщения, после показа сообщения «Ваше сообщение успешно отправлено! Совсем скоро я свяжусь с Вами и мы обсудим все вопросы» через несколько секунд перенаправляло на главную страницу?

И еще один вопрос: как сделать проверку поля Email? А то туда можно вводить все, что хочешь. Не проверяет наличие @ в общем. Как-то так.

P.S.Я не программист, прошу именно «разжевать и показать».
 
 Top
RickMan
Отправлено: 23 Января, 2015 - 15:01:59
Post Id


Участник


Покинул форум
Сообщений всего: 1033
Дата рег-ции: Май 2012  


Помог: 30 раз(а)




http://www[dot]the-art-of-web[dot]com/ht[dot][dot][dot]form-validation/ - валидация почты на стороне html
http://php.net/manual/tr/filter....s.validation.php - валидация почты на стороне php

http://www[dot]w3schools[dot]com/jsref/m[dot][dot][dot]n_settimeout[dot]asp - для задержки перед переадерсацией (js)
http://www[dot]w3schools[dot]com/js/js_w[dot][dot][dot]dow_location[dot]asp - сама переадресация (js)
http://stackoverflow[dot]com/questio[dot][dot][dot]using-settimeout - все сместе
 
 Top
broshurkaplus
Отправлено: 27 Января, 2015 - 07:47:04
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


Помог: 2 раз(а)




проверку майла на стороне сервера в Вашем случае вообще не вижу смысла проводить.
объясню:
тк предполагается, что пользователь заинтересован в получении от Вас чего то, то он вряд ли будет вводить не рабочее мыло
поэтому
нужно проводить все проверки на клиенте только для того, чтобы проверять на опечатки, те на допустимые символы и наличие @ в мыле, при этом в случае ошибки выводить сообщение пользователю по ходу ввода данных.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB