как подключить php функцию для отправки писем в форме обратной связи?
<div class="c_form">
<form action="" method=post>
<p>Вы можете отправить сообщение</p>
<input type="text" name="email" value="Ваш E-mail" onclick="this.value=''" size="50"><br /><br />
<textarea name="mess" rows="4" cols="40">Сообщение</textarea><br />
<input type="submit" value="Отправить" name="submit" style="width: 120px;"></form>
</div>
напиши кто знает пожалуйста!
php функция
Автор
vad806579
, Апр 01 2011 04:53
3 ответов в теме
#1
Отправлено 01 Апрель 2011 - 04:53
#2
Отправлено 01 Апрель 2011 - 06:33
<?php
if(isset($_POST['submit')]) {
$email = substr(htmlspecialchars(trim($_POST['email'])), 0, 100);
$mess = substr(htmlspecialchars(trim($_POST['mess'])), 0, 10000);
$to = 'mail@gt-light.ru';
$title="Сообщение с сайта";
if (mail($to, $title, $mess, 'From:'.$email)) $c_mess='Спасибо! Ваше сообщение отправлено.';
}
?>
и сама форма-
<div class="c_form">
<form action="" method=post>
<p>Вы можете отправить сообщение</p>
<input type="text" name="email" value="Ваш E-mail" onclick="this.value=''" size="50"><br /><br />
<textarea name="mess" rows="4" cols="40">Сообщение</textarea><br />
<input type="submit" value="Отправить" name="submit" style="width: 120px;"></form>
</div>
не работает у меня(
if(isset($_POST['submit')]) {
$email = substr(htmlspecialchars(trim($_POST['email'])), 0, 100);
$mess = substr(htmlspecialchars(trim($_POST['mess'])), 0, 10000);
$to = 'mail@gt-light.ru';
$title="Сообщение с сайта";
if (mail($to, $title, $mess, 'From:'.$email)) $c_mess='Спасибо! Ваше сообщение отправлено.';
}
?>
и сама форма-
<div class="c_form">
<form action="" method=post>
<p>Вы можете отправить сообщение</p>
<input type="text" name="email" value="Ваш E-mail" onclick="this.value=''" size="50"><br /><br />
<textarea name="mess" rows="4" cols="40">Сообщение</textarea><br />
<input type="submit" value="Отправить" name="submit" style="width: 120px;"></form>
</div>
не работает у меня(
#3
Отправлено 01 Апрель 2011 - 11:47
Необходимо создать файлик, например mail.php
<?php if(isset($_POST['submit'])) { $email = substr(htmlspecialchars(trim($_POST['email'])), 0, 100); $mess = substr(htmlspecialchars(trim($_POST['mess'])), 0, 10000); $to = 'mail@gt-light.ru'; $title="Сообщение с сайта"; if (mail($to, $title, $mess, 'From:'.$email)) { echo 'Спасибо! Ваше сообщение отправлено.'; } } ?> <div class="c_form"> <form action="mail.php" method=post> <p>Вы можете отправить сообщение</p> <input type="text" name="email" value="Ваш E-mail" onclick="this.value=''" size="50"><br /><br /> <textarea name="mess" rows="4" cols="40">Сообщение</textarea><br /> <input type="submit" value="Отправить" name="submit" style="width: 120px;"> </form> </div>А дальше необходимо положить этот файлик на веб-сервер с поддержкой php и обратиться к нему по адресу http://<домен>/mail.php и все заработает - проверил ) Кстати, ошибку в коде тоже исправил )
#4
Отправлено 02 Апрель 2011 - 04:25
Недостатком такого кода будет являться то, что при каждом обновлении страницы будет происходить отправка письма. Так моно положить почтовый ящик кучей однотипных сообщений.
Так что,желательно, после отправки письма сделать редирект на страницу с формой (и вывести сообщение об успешной отправки письма) или же отдельную страницу с сообщением об успешной отправки письма.
E-mail должен проверяться на корректность, а не просто вычищаться. По хорошему письмо должно приходить с адреса отправителя, чтобы тот, кто получит письмо мог сразу же и ответить, путем нажатия соот-щей кнопки в почтовой программе. Еще бы не рекомендовал называть файл mail.php для отправки формы - спамботы быстро поймут для чего скрипт и будете почту получать тоннами. Так что не помешало бы на форму еще и captcha поставить. И последнее: кодировка письма должна быть указана явно. Это облегчит жизнь при прочтении письма разными почтовыми клиентами.
Так что нет пределу совершенства. Удачи в программировании
Так что,желательно, после отправки письма сделать редирект на страницу с формой (и вывести сообщение об успешной отправки письма) или же отдельную страницу с сообщением об успешной отправки письма.
E-mail должен проверяться на корректность, а не просто вычищаться. По хорошему письмо должно приходить с адреса отправителя, чтобы тот, кто получит письмо мог сразу же и ответить, путем нажатия соот-щей кнопки в почтовой программе. Еще бы не рекомендовал называть файл mail.php для отправки формы - спамботы быстро поймут для чего скрипт и будете почту получать тоннами. Так что не помешало бы на форму еще и captcha поставить. И последнее: кодировка письма должна быть указана явно. Это облегчит жизнь при прочтении письма разными почтовыми клиентами.
Так что нет пределу совершенства. Удачи в программировании
0 посетителей читают тему
0 members, 0 guests, 0 anonymous users