Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » В помощь вебмастеру » Отправка почты с сайта

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

fenix379

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите подредактировать скрипт. Нужно убрать контрольный вопрос (два + два =) и проверку на корректность ввода E-mail
 
<script language="javascript">
 <!--
 function sendform() {
 if (document.forms[0].name.value == "") {
 alert('Пожалуйста, введите Ваше имя');
 document.forms[0].name.focus();
 return false
 }
 if (document.forms[0].mail.value == "") {
 alert('Пожалуйста, введите электронный адрес');
 document.forms[0].mail.focus();
 return false
 }
 if (!(/^[\w\.-]+@[\w\.-]+\.\w+$/i).test(document.forms[0].mail.value)) {
 alert('Введите реальный электронный адрес!');
 return false;  
 }
 if (document.forms[0].message.value == "") {
 alert('Пожалуйста, введите текст сообщения');
 document.forms[0].message.focus();
 return false
 }
 if (document.forms[0].q.value != 4) {
 alert('Неверный ответ на контрольный вопрос!');
 document.forms[0].q.focus();
 return false
 }
 return true;
 }
 //-->
 </script>
 </head>
 <body>
 <?php
 $FormAction = $_SERVER['PHP_SELF'];
 if (isset($_POST['post']) || ($_POST['post'] == 'send')) {
 if (!isset($_POST['q']) or ($_POST['q'] != 4)) {
 echo "<script type=\"text/javascript\">alert(\"Неверный ответ на контрольный вопрос!\")</script>";
 }
 else {
 $name = htmlspecialchars(trim($_POST['name']));
 $mail = htmlspecialchars(trim($_POST['mail']));
 $message = htmlspecialchars(trim($_POST['message']));
 $box = " "; //email администратора, например: $box = "pupkin@vasy.ru"
 $subject = "Вопрос с сайта";
 $headers = "Content-type: text/plain; charset=UTF-8 \r\n"; // кодировка письма, например: charset=UTF-8
 $headers .= "From: $name <$mail>\r\n";
 $ret = 0;
 $ret = mail ($box, $subject, $message, $headers);
 if ($ret == 'true') {
 echo "<script type=\"text/javascript\">alert(\"Спасибо, ваше сообщение отправлено.\")</script>";
 }
 else {
 echo "<script type=\"text/javascript\">alert(\"Извините, отправка не удалась. Попробуйте ещё раз.\")</script>";
 }
 }
 }
 ?>
 <form onsubmit="return sendform();" action="<?php echo $FormAction; ?>" id="message" name="message" method="post">
 <table width="300" cellspacing="5" style="border:solid 1px #999; margin:auto; background-color: #F6F6F6">
 <tr>
 <td align="center">Ваше имя
 <input type="text" name="name" id="name" /></td>
 </tr>
 <tr>
 <td align="center">Ваш email
 <input type="text" name="mail" id="mail" /></td>
 </tr>
 <tr>
 <td align="center"><textarea name="message" id="message" cols="30" rows="5"></textarea></td>
 </tr>
 <tr>
 <td align="center">два + два =
 <input name="q" type="text" id="q" size="3" /></td>
 </tr>
 <tr>
 <td align="center"><input type="submit" name="button" id="button" value="Отправить письмо" />
 <input name="post" type="hidden" id="post" value="send" /></td>
 </tr>
 </table>
 </form>

Всего записей: 380 | Зарегистр. 30-11-2004 | Отправлено: 14:50 04-07-2012 | Исправлено: fenix379, 14:52 04-07-2012
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
fenix379
JavaScript: Проверка значений элементов формы (e-mail, имя.. + PHP: Регулярные выражения (RegExp, Regular, eregi, preg)

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 15:09 04-07-2012
fenix379

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Получилось, но при заходе на страницу, со скриптом, почему то сразу выдает что сообщение отправлено. Что здесь нужно подправить?
 
<script language="javascript">
<!--
function sendform() {
if (document.forms[0].name.value == "") {
alert('Пожалуйста, введите Ваше имя');
document.forms[0].name.focus();
return false
}
if (document.forms[0].mail.value == "") {
alert('Пожалуйста, введите электронный адрес');
document.forms[0].mail.focus();
return false
}
if (document.forms[0].message.value == "") {
alert('Пожалуйста, введите текст сообщения');
document.forms[0].message.focus();
return false
}
return true;
}
//-->
</script>
</head>
<body>
<?php
$FormAction = $_SERVER['PHP_SELF'];
$name = htmlspecialchars(trim($_POST['name']));
$mail = htmlspecialchars(trim($_POST['mail']));
$message = htmlspecialchars(trim($_POST['message']));
$box = "pupkin@vasy.ru"; //email администратора, например: $box = "pupkin@vasy.ru"
$subject = "Вопрос с сайта";
$headers = "Content-type: text/plain; charset=UTF-8 \r\n"; // кодировка письма, например: charset=UTF-8
$headers .= "From: $name <$mail>\r\n";
if (mail ($box, $subject, $message, $headers)){
echo "<script type=\"text/javascript\">alert(\"Спасибо, ваше сообщение отправлено.\")</script>";
}
else {
echo "<script type=\"text/javascript\">alert(\"Извините, отправка не удалась. Попробуйте ещё раз.\")</script>";
}
?>
<form onsubmit="return sendform();" action="<?php echo $FormAction; ?>" id="message" name="message" method="post">
<table width="300" cellspacing="5" style="border:solid 1px #999; margin:auto; background-color: #F6F6F6">
<tr>
<td align="center">Ваше имя
<input type="text" name="name" id="name" /></td>
</tr>
<tr>
<td align="center">Ваш email
<input type="text" name="mail" id="mail" /></td>
</tr>
<tr>
<td align="center"><textarea name="message" id="message" cols="30" rows="5"></textarea></td>
</tr>
<tr>
<td align="center"><input type="submit" name="button" id="button" value="Отправить письмо" />
<input name="post" type="hidden" id="post" value="send" /></td>
</tr>
</table>
</form>

----------
Когда человек начинает говорить о совести - я понимаю что передо мной редкий лжец и лицемер

Всего записей: 380 | Зарегистр. 30-11-2004 | Отправлено: 21:10 05-07-2012 | Исправлено: fenix379, 15:41 08-07-2012
ninaanin



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
+10Cheery
Отправка сообщений с сайта.
 
у меня есть свой сайт не укоз (арендовала домен и хостинг,) свой почтовый ящик, нужен скрипт форма с помощью которой можно прямо с моего сайта написать мне письмо, вот здесь нашла но что он не работает, (http://site-script.ru/articles.php?id=2)
 

Всего записей: 106 | Зарегистр. 17-05-2009 | Отправлено: 18:51 16-12-2013
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ninaanin
Perl, PHP: отправка формы на e-mail

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 19:48 16-12-2013
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » В помощь вебмастеру » Отправка почты с сайта


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru