|
|
|
| Здравствуйте Уважаемое сообщество ни могли бы посоветовать скрипт отправки сообщений на почту из заполненой формы.
Саму форму средствами html собрал
<form action="send_1.php" method="post">
<input type="text" value="Введите телефон" class="form_tel" onfocus="this.value=''" required pattern="[0-9]{10}">
<input type="text" value="Введите E-mail" class="form_e-mail" onfocus="this.value=''" required pattern="\S+@[a-z]+.[a-z]+" >
<input type="submit" value="Заказать звонок" class="form_butt">
</form>
|
присутствует проверка введённых данных по шаблону при помощи регулярных выражений pattern="\S+@[a-z]+.[a-z]+ (для html5)
Но вот незнаю какой скрипт использовать, ни могли бы дать участок php кода
За основу можно взять этот участок кода на php
<?php
function show_form()
{
?>
<form action="" method=post>
<div align="center">
<br />Имя*<br />
<input type="text" name="name" size="40">
<br />Контактный телефон<br />
<input type="text" name="tel" size="40">
<br />Контактный email*<br />
<input type="text" name="email" size="40">
<br />Teма<br />
<input type="text" name="title" size="40">
<br />Сообщение*<br />
<textarea rows="10" name="mess" cols="30"></textarea>
<br /><input type="submit" value="Отправить" name="submit">
</div>
</form>
* Помечены поля, которые необходимо заполнить
<?
}
function complete_mail() {
$_POST['title'] = substr(htmlspecialchars(trim($_POST['title'])), 0, 1000);
$_POST['mess'] = substr(htmlspecialchars(trim($_POST['mess'])), 0, 1000000);
$_POST['name'] = substr(htmlspecialchars(trim($_POST['name'])), 0, 30);
$_POST['tel'] = substr(htmlspecialchars(trim($_POST['tel'])), 0, 30);
$_POST['email'] = substr(htmlspecialchars(trim($_POST['email'])), 0, 50);
// если не заполнено поле "Имя" - показываем ошибку 0
if (empty($_POST['name']))
output_err(0);
// если неправильно заполнено поле email - показываем ошибку 1
if(!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $_POST['email']))
output_err(1);
// если не заполнено поле "Сообщение" - показываем ошибку 2
if(empty($_POST['mess']))
output_err(2);
// создаем наше сообщение
$mess = '
Имя отправителя:'.$_POST['name'].'
Контактный телефон:'.$_POST['tel'].'
Контактный email:'.$_POST['email'].'
'.$_POST['mess'];
// $to - кому отправляем
$to = 'test@test.ru';
// $from - от кого
$from='test@test.ru';
mail($to, $_POST['title'], $mess, "From:".$from);
echo 'Спасибо! Ваше письмо отправлено.';
}
function output_err($num)
{
$err[0] = 'ОШИБКА! Не введено имя.';
$err[1] = 'ОШИБКА! Неверно введен e-mail.';
$err[2] = 'ОШИБКА! Не введено сообщение.';
echo '<p>'.$err[$num].'</p>';
show_form();
exit();
}
if (!empty($_POST['submit'])) complete_mail();
else show_form();
?>
|
| |
|
|
|
|
|
|
|
для: pautina
(12.01.2015 в 19:52)
| | >htmlspecialchars(trim($_POST['title']))
А вы уверены, что ваш респондет получает почту именно в html-формате? | |
|
|
|
|
|
|
|
для: confirm
(12.01.2015 в 23:56)
| | Нет ни в html формате, как текстовое сообщение, может другой какой скрипт посоветуете? | |
|
|
|
|
|
|
|
для: pautina
(13.01.2015 в 12:31)
| | А если как текст, и у респондента действительно выбран режим "принимать как текст", то что он увидит в почтовом сообщении после вышеуказанного действия вами произведенного? | |
|
|
|
|
|
|
|
для: confirm
(13.01.2015 в 12:49)
| | Не могу сказать мне бы скрипт или рабочий участок кода на php (ну скрипт который отправку делает, с полями Имя, Телефон, E-mail, Сообщение) | |
|
|
|
|
|
|
|
для: pautina
(13.01.2015 в 16:53)
| | Скрипт - пожалуйста, есть готовое для этого, например, PHPMailer. | |
|
|
|
|
|
|
|
для: confirm
(13.01.2015 в 20:33)
| | Участок кода или ссылку на статью или документ можете дать? | |
|
|
|
|
|
|
|
для: pautina
(14.01.2015 в 18:45)
| | Это класс, сделайте поиск в браузере, попадете на него, там все написано что это и как установить. | |
|
|
|
|
|
|
|
для: confirm
(14.01.2015 в 19:13)
| | В интернете полно всего особенно по отправке почты, правда нужного мне скрипта не нашёл.
<form action="send_1.php" method="post">
<input type="text" value="Введите телефон" class="form_tel" onfocus="this.value=''" required pattern="[0-9]{10}">
<input type="text" value="Введите E-mail" class="form_e-mail" onfocus="this.value=''" required pattern="\S+@[a-z]+.[a-z]+" >
<input type="submit" value="Заказать звонок" class="form_butt">
</form>
|
Эта форма на html 5 и есть проверка вводимых символов в форму при помощи регулярных выражений по записям
- для телефона
pattern="\S+@[a-z]+.[a-z]+"
| - для записи адреса электронной почты,
Как мне или на чём? реализовать маску для поля телефона
т.е. при наведении указателя мыши на поле телефона появляется так называемая маска для заполнения номера телефона в следующем виде
7-(х1х2х3)-х4х5х6-х7х8-х9х10
|
Ну и участок кода на php не посоветуете, рабочий участок кода, по которому отправка осуществляется, может даже вашей web студии какой станданртный скрипт php | |
|
|
|
|
|
|
|
для: pautina
(14.01.2015 в 22:02)
| | Поймите одну простую вещь - нет скриптов, как и нет специализированной почты по отправке полей именно вашей формы, и по отправке еще чьих либо полей с их уже собственными вкусами.
Почтовое ведомство одно, и оно не понимает и не ведает откуда вы взяли то, что хотите отправить почтой. Почте, в частности функции РНР mail(), которая отправляет почтовые сообщения передается адрес получателя, адрес (или имя) отправителя, тема почтового сообщения, тело почтового сообщения и заголовки.
Вот только отправляя почту необходимо придерживаться рекомендаций описанных в соответствующих документах. Если вы не можете разобраться в этих рекомендациях, то и отправляйте свои сообщения через готовые классы, которые знают как проверять и подготавливать данные для почты, чтобы они были корректны.
И не ищите скриптов для отправки именно ваших инпутов - нет таких. | |
|
|
|