отправка почты
вот сам код скрипта
kmail.php
Код:
<?php
#############################################
# Создание скрипта: Kyoshiro #
# Имя скрипта: k.Mail Form #
# Версия скрипта: 0.3 #
# Статус: Бесплатный скрипт #
# Требования: PHP4 и выше... #
# Дата создания скрипта: 22 октября 2002 г. #
# Страница: http://php9.port5.com/ #
# http://dreams.host.sk/ #
# Почта: [email]kyoshiro@automail.ru[/email] #
#############################################
# Удачной работы! #
# ... Я буду помнить. #
#############################################
?>
<html>
<head>
<title>k.Mail Form v3.0</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<STYLE type=text/css>
<!--
body, td, input, textarea, select { color: black; font: 8pt verdana; font-weight: none; text-decoration: none }
}
-->
</STYLE>
</head>
<body bgcolor="#FFFFFF" text="#000000" link="#0095ff" vlink="#0095ff" alink="#0095ff" style="font-size: 8pt; font-family: Verdana">
<?php
// Максимальное количество букв в поле, "Ваше имя".
$namemax=12;
// Максимальное количество букв в поле, "E-Mail".
$mailmax=10;
// Максимальное количество букв в поле, "Ваше сообщение".
$messmax=250;
?>
<?php
if (getenv('HTTP_X_FORWARDED_FOR'))
{
$ip=getenv('HTTP_X_FORWARDED_FOR');
}
{
$ip=getenv('REMOTE_ADDR');
}
?>
<?php
// E-mail на который будет отсылаться почта.
$mailto="yvv@me.by";
?>
<?php
function display_form() {
?>
<?php
// Внимание!!! Если Вы хотите работать в одном html окне, уберите строку * target="_blank" *
?>
<form name="form1" method="post" action="" target="_blank">
<table width="27%" border="0">
<tr>
<td>
<p><font size="-1">Ваше имя: </font>
<input style="BORDER-BOTTOM: 1px solid; BORDER-LEFT: 1px solid; BORDER-RIGHT: 1px solid; BORDER-TOP: 1px solid; FONT-FAMILY: "Verdana"; FONT-SIZE: 8pt" type="text" name="im">
</p>
</td>
</tr>
</table>
<table width="27%" border="0">
<tr>
<td>
<p><font size="-1">*Ваш E-Mail: </font>
<input style="BORDER-BOTTOM: 1px solid; BORDER-LEFT: 1px solid; BORDER-RIGHT: 1px solid; BORDER-TOP: 1px solid; FONT-FAMILY: "Verdana"; FONT-SIZE: 8pt" type="text" name="mail">
</p>
</td>
</tr>
</table>
<table width="27%" border="0">
<tr>
<td>
<p><font size="-1">*Ваше сообщение: </font>
<textarea style="BORDER-BOTTOM: 1px solid; BORDER-LEFT: 1px solid; BORDER-RIGHT: 1px solid; BORDER-TOP: 1px solid; FONT-FAMILY: "Verdana"; FONT-SIZE: 8pt"class=form cols=19 rows=12 name="mess">
</textarea>
</p>
</td>
</tr>
</table>
<p align="left">
<input style="background-color : #cccccc; border-style: solid;border-width: 1;" type="submit" name="ok" value="Отправить">
</p>
<p align="left">k.Mail Form script - programming by Kyoshiro | dreams.host.sk | http://php9.port5.com <br>... Я буду помнить.</p>
</form>
<?php
}
?>
<?php
function process_form() {
global $im, $mail, $mess, $mailto;
if (empty($mail) and empty($mess) and empty($im)){echo "Не заполнено ни одно поле!<br>k.Mail Form script - programming by Kyoshiro | [email]kyoshiro@automail.ru[/email]";exit;}
// Тут :) Вы можете заблокировать/удалить или добавить любые, доменные зоны!
// Например: [email]test@test.ru[/email] - Здесь доменная зона RU. [email]test@aaa.net[/email] - А здесь NET
// Я уже добавил сюда все существующие на сегодня, 14.10.02, доменные зоны!
// Если Вы не хотите чтобы скрипт отсылал почту на выбранные Вами доменные зоны, просто удалите их!
// Думаю с форматом добавления/удаления/блокирования Вы разберётесь!
$table = "^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|by|bj|bm|bn|bo|br|bs|bt|bv|bw|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$";
if(!eregi($table, $mail)){echo "Не верно заполнено поле: <b>Ваш E-mail</b>, или заблокированная/необозначенная зона домена!<br>k.Mail Form script - programming by Kyoshiro | [email]kyoshiro@automail.ru[/email]";exit;}
if (empty($mess))
{
echo "Не заполнено поле: <b>Ваше сообщение</b><br>k.Mail Form script - programming by Kyoshiro | [email]kyoshiro@automail.ru[/email]";exit;
}
// Здесь Вы можете заблокировать некоторые почтовые ящики. На них почта со скрипта отсылаться не будет.
// Новый блокируемый, "E-mail", Вы можете внести в массив, "$bannedemail".
// Формат: "блокируемый@ящик.ru". Разделитель, знак зяпятой.
// Пример: "блокируемый1@ящик.ru","блокируемый2@ящик.ru"
// Если Вам нужна эта функция то, "разморозьте", четыре строки стоящие ниже, удалив впереди них два слеша! ( // )
//$bannedemail=array("baka@me.com","a@cmail.ru","g@cook.ru","none@none.ru");
//for ($i=0; $i<count($bannedemail);$i++){
//if ($mailto == $bannedemail[$i]){echo "Почтовый ящик заблокирован.<br>";
//echo "k.Mail Form script - programming by Kyoshiro | [email]kyoshiro@automail.ru[/email]";exit;}}
$mess=substr($mess,0,$messmax);
$mail=substr($mail,0,$mailmax);
$im=substr($im,0,$namemax);
// Если Вы хотите обрезать пробелы, в начале и в конце строк, введённых в любом из полей,
// "разморозьте", три строки стоящие ниже, удалив впереди них два слеша! ( // )
// Функция полезна когда Вас досаждают сообщениями состоящими из одних пробелов!
// Или множества пробелов в начале или в конце текста сообщения!
// $mess=trim($mess);
// $mail=trim($mail);
// $im=trim($im);
$subject="Вопрос от $mail";
if ($im == ""){$im="none";}
$body="Имя:\n$im\n\nE-mail:\n$mail\n\nКомментарии:\n$mess\n\nIP Logging: $ip\n\nk.Mail Form script - programming by Kyoshiro | [email]kyoshiro@automail.ru[/email]\n... Я буду помнить.";
// Если Вы не хотите переконвертировать все сообщения в кодировку Win - 1251,
// сотрите две ниже следующие строчки!
// Вам нужно переконвертировать сообщения в кодировку Koi8 - r ?
// Тогда просто измените значение букв "w,k" на "k,w" в двух ниже следующих строчках!
$body=convert_cyr_string (stripslashes($body),w,k);
$subject=convert_cyr_string (stripslashes($subject),w,k);
$headers = "From: $im <$mail> <$ip>\n";
$headers .= "X-Mailer: k.Mail Form script - programming by Kyoshiro | [email]kyoshiro@automail.ru[/email]\n";
// Здесь Вы можете настроить, "заголовки/headers", письма.
// Если Вы хотите использовать выбранный Вами, "заголовок", то Вам нужно просто, "разморозить",
// строку данного заголовка, удалив перед строкой два слеша (//)
// Все заголовки пояснены комментариями.
// Лицо которому можно ответить на письмо. Оно ( лицо :)) также является и отправителем письма.
// $headers .= "ReplyTo: $im <$mail>\n";
// Данный заголовок определяет важность письма! 5 - самая высокая важность, 1 - самая низкая,
// 3 - считается нормальной важностью.
// $headers .= "X-Priority: 3\n";
// Позволяет получить уведомление о прочтении Вашего письма.
$headers .= "Diposition-Notification-To: $mail\n";
$suck = mail($mailto, $subject, $body, $headers);
if ($suck)
{
echo "Спасибо. Ваше сообщение отправлено.<br><br>";
}
?><?php
}
?>
<?php
if (empty($ok)) { display_form(); } else
{ process_form(); }
?>
</body>
</html>
#############################################
# Создание скрипта: Kyoshiro #
# Имя скрипта: k.Mail Form #
# Версия скрипта: 0.3 #
# Статус: Бесплатный скрипт #
# Требования: PHP4 и выше... #
# Дата создания скрипта: 22 октября 2002 г. #
# Страница: http://php9.port5.com/ #
# http://dreams.host.sk/ #
# Почта: [email]kyoshiro@automail.ru[/email] #
#############################################
# Удачной работы! #
# ... Я буду помнить. #
#############################################
?>
<html>
<head>
<title>k.Mail Form v3.0</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<STYLE type=text/css>
<!--
body, td, input, textarea, select { color: black; font: 8pt verdana; font-weight: none; text-decoration: none }
}
-->
</STYLE>
</head>
<body bgcolor="#FFFFFF" text="#000000" link="#0095ff" vlink="#0095ff" alink="#0095ff" style="font-size: 8pt; font-family: Verdana">
<?php
// Максимальное количество букв в поле, "Ваше имя".
$namemax=12;
// Максимальное количество букв в поле, "E-Mail".
$mailmax=10;
// Максимальное количество букв в поле, "Ваше сообщение".
$messmax=250;
?>
<?php
if (getenv('HTTP_X_FORWARDED_FOR'))
{
$ip=getenv('HTTP_X_FORWARDED_FOR');
}
{
$ip=getenv('REMOTE_ADDR');
}
?>
<?php
// E-mail на который будет отсылаться почта.
$mailto="yvv@me.by";
?>
<?php
function display_form() {
?>
<?php
// Внимание!!! Если Вы хотите работать в одном html окне, уберите строку * target="_blank" *
?>
<form name="form1" method="post" action="" target="_blank">
<table width="27%" border="0">
<tr>
<td>
<p><font size="-1">Ваше имя: </font>
<input style="BORDER-BOTTOM: 1px solid; BORDER-LEFT: 1px solid; BORDER-RIGHT: 1px solid; BORDER-TOP: 1px solid; FONT-FAMILY: "Verdana"; FONT-SIZE: 8pt" type="text" name="im">
</p>
</td>
</tr>
</table>
<table width="27%" border="0">
<tr>
<td>
<p><font size="-1">*Ваш E-Mail: </font>
<input style="BORDER-BOTTOM: 1px solid; BORDER-LEFT: 1px solid; BORDER-RIGHT: 1px solid; BORDER-TOP: 1px solid; FONT-FAMILY: "Verdana"; FONT-SIZE: 8pt" type="text" name="mail">
</p>
</td>
</tr>
</table>
<table width="27%" border="0">
<tr>
<td>
<p><font size="-1">*Ваше сообщение: </font>
<textarea style="BORDER-BOTTOM: 1px solid; BORDER-LEFT: 1px solid; BORDER-RIGHT: 1px solid; BORDER-TOP: 1px solid; FONT-FAMILY: "Verdana"; FONT-SIZE: 8pt"class=form cols=19 rows=12 name="mess">
</textarea>
</p>
</td>
</tr>
</table>
<p align="left">
<input style="background-color : #cccccc; border-style: solid;border-width: 1;" type="submit" name="ok" value="Отправить">
</p>
<p align="left">k.Mail Form script - programming by Kyoshiro | dreams.host.sk | http://php9.port5.com <br>... Я буду помнить.</p>
</form>
<?php
}
?>
<?php
function process_form() {
global $im, $mail, $mess, $mailto;
if (empty($mail) and empty($mess) and empty($im)){echo "Не заполнено ни одно поле!<br>k.Mail Form script - programming by Kyoshiro | [email]kyoshiro@automail.ru[/email]";exit;}
// Тут :) Вы можете заблокировать/удалить или добавить любые, доменные зоны!
// Например: [email]test@test.ru[/email] - Здесь доменная зона RU. [email]test@aaa.net[/email] - А здесь NET
// Я уже добавил сюда все существующие на сегодня, 14.10.02, доменные зоны!
// Если Вы не хотите чтобы скрипт отсылал почту на выбранные Вами доменные зоны, просто удалите их!
// Думаю с форматом добавления/удаления/блокирования Вы разберётесь!
$table = "^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|by|bj|bm|bn|bo|br|bs|bt|bv|bw|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$";
if(!eregi($table, $mail)){echo "Не верно заполнено поле: <b>Ваш E-mail</b>, или заблокированная/необозначенная зона домена!<br>k.Mail Form script - programming by Kyoshiro | [email]kyoshiro@automail.ru[/email]";exit;}
if (empty($mess))
{
echo "Не заполнено поле: <b>Ваше сообщение</b><br>k.Mail Form script - programming by Kyoshiro | [email]kyoshiro@automail.ru[/email]";exit;
}
// Здесь Вы можете заблокировать некоторые почтовые ящики. На них почта со скрипта отсылаться не будет.
// Новый блокируемый, "E-mail", Вы можете внести в массив, "$bannedemail".
// Формат: "блокируемый@ящик.ru". Разделитель, знак зяпятой.
// Пример: "блокируемый1@ящик.ru","блокируемый2@ящик.ru"
// Если Вам нужна эта функция то, "разморозьте", четыре строки стоящие ниже, удалив впереди них два слеша! ( // )
//$bannedemail=array("baka@me.com","a@cmail.ru","g@cook.ru","none@none.ru");
//for ($i=0; $i<count($bannedemail);$i++){
//if ($mailto == $bannedemail[$i]){echo "Почтовый ящик заблокирован.<br>";
//echo "k.Mail Form script - programming by Kyoshiro | [email]kyoshiro@automail.ru[/email]";exit;}}
$mess=substr($mess,0,$messmax);
$mail=substr($mail,0,$mailmax);
$im=substr($im,0,$namemax);
// Если Вы хотите обрезать пробелы, в начале и в конце строк, введённых в любом из полей,
// "разморозьте", три строки стоящие ниже, удалив впереди них два слеша! ( // )
// Функция полезна когда Вас досаждают сообщениями состоящими из одних пробелов!
// Или множества пробелов в начале или в конце текста сообщения!
// $mess=trim($mess);
// $mail=trim($mail);
// $im=trim($im);
$subject="Вопрос от $mail";
if ($im == ""){$im="none";}
$body="Имя:\n$im\n\nE-mail:\n$mail\n\nКомментарии:\n$mess\n\nIP Logging: $ip\n\nk.Mail Form script - programming by Kyoshiro | [email]kyoshiro@automail.ru[/email]\n... Я буду помнить.";
// Если Вы не хотите переконвертировать все сообщения в кодировку Win - 1251,
// сотрите две ниже следующие строчки!
// Вам нужно переконвертировать сообщения в кодировку Koi8 - r ?
// Тогда просто измените значение букв "w,k" на "k,w" в двух ниже следующих строчках!
$body=convert_cyr_string (stripslashes($body),w,k);
$subject=convert_cyr_string (stripslashes($subject),w,k);
$headers = "From: $im <$mail> <$ip>\n";
$headers .= "X-Mailer: k.Mail Form script - programming by Kyoshiro | [email]kyoshiro@automail.ru[/email]\n";
// Здесь Вы можете настроить, "заголовки/headers", письма.
// Если Вы хотите использовать выбранный Вами, "заголовок", то Вам нужно просто, "разморозить",
// строку данного заголовка, удалив перед строкой два слеша (//)
// Все заголовки пояснены комментариями.
// Лицо которому можно ответить на письмо. Оно ( лицо :)) также является и отправителем письма.
// $headers .= "ReplyTo: $im <$mail>\n";
// Данный заголовок определяет важность письма! 5 - самая высокая важность, 1 - самая низкая,
// 3 - считается нормальной важностью.
// $headers .= "X-Priority: 3\n";
// Позволяет получить уведомление о прочтении Вашего письма.
$headers .= "Diposition-Notification-To: $mail\n";
$suck = mail($mailto, $subject, $body, $headers);
if ($suck)
{
echo "Спасибо. Ваше сообщение отправлено.<br><br>";
}
?><?php
}
?>
<?php
if (empty($ok)) { display_form(); } else
{ process_form(); }
?>
</body>
</html>
Даже вчитываться неохота в это
Что за буквы тут напечатаны? :eek: :eek: :eek:
в плане :confused:
в том плане, что если вы не потрудились выбрать из этого кода комментарии, явно несущественные участки кода, а также не отформатировали код тэгами, почему вы думаете, что кто-либо будет этим заниматься за вас? имхо - закрыть.
нет извени я сделал вписал подредоктировал то что мне надо и мыло даже стоит здесь мое.
и если я что то пропустил это не значит что ты должен все делать за меня!!!!!!!!! ну всетаки можно же хоть чтонибудь подсказать или обяснить
а дурные возгласы ани мне никак пока не помогают:) зачем их писать:confused:
и если я что то пропустил это не значит что ты должен все делать за меня!!!!!!!!! ну всетаки можно же хоть чтонибудь подсказать или обяснить
а дурные возгласы ани мне никак пока не помогают:) зачем их писать:confused:[/QUOTE]
Сделал за тебя всю работу по форматированию текста. Твоя задача теперь очистить всё это шило от ненужного барахла, типа многочисленных комментариев и HTML-кода и разъяснить нормально, чего ты хочешь. Иначе, видимо, ответа не дождёшься...
Для начала: если на хосте регистер_глобалс = он - то следует заменить в скрипте переменные окружения на соответствующие элементы супер-глобальных массивов.
Мне кажется, если человек совсем не шарящий, то навряд ли он сможет понять, чтго там существенно, а что нет.
greens
Напиши автору скрипта. А ещё лучше - найди другой. Этот кривой какой-то весь.
Не то слово. Кривей некуда уже...