|
|
|
| forma.htm
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Отправка письма</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head>
<body>
<form action=http://localhost/file.php method="post">
<table width="790" border="0">
<tr>
<td width="114">Имя:</td>
<td width="666"><input type="text" name=name> </td>
</tr>
<tr>
<td>E-mail:</td>
<td><input type="text" name=e-mail></td>
</tr>
<tr>
<td>Тема:</td>
<td><input type="text" name=theme></td>
</tr>
<tr>
<td>Письмо:</td>
<td><textarea cols="25" rows="5" name=body></textarea></td>
</tr>
<tr>
<td> </td>
<td> <input type="submit" value="Отправить"></td>
</tr>
</table>
</form>
</body>
</html>
|
file.php
<html>
<head>
<title>Отправка письма</title>
</head>
<body>
<?php
//Создание переменных
$name=$HTTP_POST_VARS['name'];
$email=$HTTP_POST_VARS['e-mail'];
$theme=$HTTP_POST_VARS['theme'];
$body=$HTTP_POST_VARS['body'];
//Проверка правильности адреса
if (!eregi('^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$', $email))
{
echo 'Недопустимый адрес эллектронной почты. Пожалуйста, '
.'вернитесь на предыдущую страницу и попытайтесь еще раз.';
exit;
}
//Адрес получателя
$toaddress = 'hatsker@mail.ru';
//Тема письма
$subject = 'Тема письма';
//Контент письма
$mailcontent = 'Ваше имя: ' .$name. "\n"
.'Ваш адрес: ' .$email. "\n"
.'Ваша тема: ' .$theme. "\n"
."Письмо: \n" .$body."\n";
//Это адрес который отображается, когда письмо полученно, (между '' можно писать что угодно :))
//$fromaddress = 'hatsker@mail.ru';
mail( $toaddress, $subject, $mailcontent, $email);
?>
//Отображение письма
<p>Ваше письмо отправлено<br></p>
<?php echo($mailcontent); ?>
</body>
</html>
|
Что то не работает...Кто поможет...Кажеться что вроде все работает, а не отправляются емаилы | |
|
|
|
|
|
|
|
для: hatsker
(17.10.2005 в 00:21)
| | Исправьте:
<?
mail( $toaddress, $subject, $mailcontent, $email);
?>
|
на
<?
mail( $toaddress, $subject, $mailcontent, "From: $name <$email>\n");
?>
|
| |
|
|
|
|
|
|
|
для: hatsker
(17.10.2005 в 00:21)
| | Хм... измените блок
<?php
mail( $toaddress, $subject, $mailcontent, $email);
?>
|
на
<?php
if(!mail( $toaddress, $subject, $mailcontent, $email))
{
echo "Не отправляется";
}
?>
|
Что выводится? И где происходит дело, на сервере? | |
|
|
|
|
|
|
|
для: cheops
(17.10.2005 в 01:20)
| | Я пробовал проверку и ничего....Ведет себя как будьто все отправило а писем на ящике не видно.....Работаю с ящиком mail.ru....Может что то с ним не работает (mail.ru) | |
|
|
|
|
|
|
|
для: hatsker
(17.10.2005 в 00:21)
| | Попробуйте изменить
<?php
mail( $toaddress, $subject, $mailcontent, $email);
?>
|
на
<?php
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/plain; charset=windows-1251\r\n";
$headers .= "Date: ".date("D,d M Y H:i:s",time())."\r\n";
$headers .= "From: $fn<$from>\r\n";
mail( $toaddress, $subject, $mailcontent, $headers);
?>
|
И еще 1 вопрос, откуда запускаете скрипт? с какого-то сайта? узнайте включен ли у хостера sendmail. | |
|
|
|
|
|
|
|
для: Dead_Fenix
(17.10.2005 в 05:00)
| | НУ дак я туплю.....Я ж его на денвере запускал....ПФУ ты....Сенкс всем за помощь...Я ТУПОЙ...ИЗВИНИТЕ ...
А еще вопрос....Когда я отправляю письмо со своей формы на ящик....ТАм отправитель мой провайдер...Как это поменять и поставить чтобы писалось что письмо было отправленно с somebody@someserver.blablabla///Если это вообще возможно | |
|
|
|
|
|
|
|
для: hatsker
(17.10.2005 в 05:09)
| | Для этого используйте заголовок From, как написал, Dead_Fenix
<?php
$headers .= "From: Вася<somebody@somewhere.ru>\r\n";
mail( $toaddress, $subject, $mailcontent, $headers);
?>
|
| |
|
|
|