код формы и обработчика php:
<?PHP
function show_form()
{
?>
<FORM action="" method="POST">
<TABLE width=380 height=300 align="center" cellpadding="0" cellspacing="1" border="0">
<TR>
<TD>
<input type="text" name="name_1" maxlength="60" value=""> <span>*</span><span>Имя друга</span><br>
</TD>
</TR>
<TR>
<TD>
<input type="text" name="email_1" maxlength="60" value=""> <span>*</span><span>E-mail друга</span><br>
</TD>
</TR>
<TR>
<TD>
<input type="text" name="name" maxlength="60" value=""> <span>*</span><span>Ваше имя</span><br>
</TD>
</TR>
<TR>
<TD>
<input type="text" name="email" maxlength="60" value=""> <span>*</span><span>Ваш e-mail</span><br>
</TD>
</TR>
<TR>
<TD>
<span>Ваше сообщение:</span><br>
<textarea name="message" rows="10" cols="50"></textarea>
<span><br>"<span>*</span>" помечены те поля, которые обязательны к заполнению</span>
</TD>
</TR>
<TR>
<TD>
<input type="reset" name="reset"value="Очистить"> <input type="submit" name="submit" value="Отправить">
</TD>
</TR>
</TABLE>
</FORM>
<?
}
function complete_mail()
{
$_POST['message'] = substr(htmlspecialchars(trim($_POST['message'])), 0, 1000000);
$_POST['name_1'] = substr(htmlspecialchars(trim($_POST['name'])), 0, 30);
$_POST['email_1'] = substr(htmlspecialchars(trim($_POST['email'])), 0, 50);
$_POST['name'] = substr(htmlspecialchars(trim($_POST['name'])), 0, 30);
$_POST['email'] = substr(htmlspecialchars(trim($_POST['email'])), 0, 50);
if (empty($_POST['name_1']))
output_err(0);
if(!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $_POST['email_1']))
output_err(1);
if(empty($_POST['message']))
output_err(2);
if (empty($_POST['name']))
output_err(0);
if(!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $_POST['email']))
output_err(1);
$mess = ' '.$_POST['name'].
' '.$_POST['email'].
' '.$_POST['mess'];
$to = ' '.$_POST['email_1'];
$from=' '.$_POST['email'];
mail($to, $mess, "From:".$from);
echo 'Спасибо! Ваше письмо отправлено.';
}
function output_err($num)
{
$err[0] = 'ОШИБКА! Не введено имя.';
$err[1] = 'ОШИБКА! Неверно введен e-mail.';
$err[2] = 'ОШИБКА! Не введено сообщение.';
echo '<p>'.$err[$num].'</p>';
show_form();
exit();
}
if (!empty($_POST['submit'])) complete_mail();
else show_form();
?>
и код файла php.ini:
[mail function]
SMTP =
sendmail_from =
sendmail_path = "pochta/sendmail.exe -t"