Показать сообщение отдельно
  #1 (permalink)  
Старый 06.03.2012, 21:58
Новичок на форуме
Отправить личное сообщение для Teotim Посмотреть профиль Найти все сообщения от Teotim
 
Регистрация: 06.03.2012
Сообщений: 4

Как усовершенствовать форму обратной связи?
Скажите, пожалуй, как сделать, что бы после отправки письма (форма обратной связи на PHP) появлялось окошко, что Ваше письмо отправлено (Что-то вроде Alert). Вот только, чтобы не открывалась новая страница, а сообщение появлялось на той же странице где установлена форма. Спасибо!

Есть форма:

Код:
<form action="http://www.sayt.ru/obratnaya/mail.php" method="post">
<p> Имя:</p>
<p>
<input type="text" name="nick" size="40" />
</p>
<p>E-mail (обязательно для заполнения)</p>
<p><input type="text" name="email" size="40" /></p>
<p>Телефон:</p>
<p>
<input type="text" name="telefon" size="40" />
</p>
<p><span class="red">Текст сообщения:</span></p>
<p><textarea name="msg" cols="50" rows="6"></textarea>
</a></p>
<p><input type="submit" value="Отправить сообщение!" id="submit_mail" /></p>
</form>
Создан mail.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=1251" />
<title>Обратная связь</title>
</head>
<?php
$url = "http://www.sayt.ru/sayt.html"; //Ваша страница, где вы будете ставить форму обратной связи.
$title = "http://www.sayt.ru/sayt.html"; //адрес вашего сайта
$subject = "Оформлена заявка на сайте $title"; //Тема отпровляемых вам сообщений
$admail = "sayt@mail.ru"; //Ваш e-mail, на который будут отправляться письма
$back = "<p><a href=\"javascript: history.back()\">Вернуться на страницу</a></p>";

if(@$_POST['nick'] or @$_POST['email'] or @$_POST['msg'] or @$_POST['telefon'])
{
@$nick = $_POST['nick'];
@$email = $_POST['email'] or die("Пожалуйста, введите E-mail!$back");
@$telefon = $_POST['telefon'];
@$msg = $_POST['msg'] or die("Пожалуйста, напишите сообшение!$back");

if(!eregi("^[a-z0-9\._-]+@[a-z0-9\._-]+\.[a-z]{2,4}\$", $email))
{
echo "Пожалуйста, введите корректный E-mail!$back";
exit;
}

$content = "\nОтправитель : $nick!\n
Емаил: $email\n
Телефон: $telefon\n
Составлено на странице: \"$title\n
Текст:\n\n$msg";
if(!@mail($admail, $subject, $content))
{
echo "Ошибка при отправке письма. Пожалуйста, сообщите об этом администратору данного сайта,<Br> позвонив по телефону: (812) 1111111.$back";
exit;
}
else
{
echo("<Script Language='JavaScript1.2'>");
echo("alert('Спасибо, Ваше сообщение отправлено!');");
echo ("location.href=\"javascript: history.back()\";");
echo("</Script>");
}
}
else {
die("Пожалуйста, заполните все поля!$back");
}
?>
<body>
</body>
</html>
Ответить с цитированием