Простая форма:
<?
$fs = '19';
$content = 'contacts2';
$level = '1';
$lvl1 = 'contacts2';
include('../inc/kcaptcha/kcaptcha.php');
session_start();
if(count($_POST)>0){
if(isset($_SESSION['captcha_keystring']) && ($_SESSION['captcha_keystring'] == $_POST['captcha']) && isset($_POST['nm']) && isset($_POST['email']) && preg_match('/.*@.*[.].*/',$_POST['email'])>0 && isset($_POST['comment'])){
$address='gruz103@gmail.com';
$eol='\r\n';
$headers = "From: ".$_POST['email'].$eol."X-Mailer: PHP v".phpversion().$eol;
if(mail($address,"От ".$_POST['nm'],$_POST['comment'],$headers)) {
header('Refresh: 3; URL=.');
$fs='18';
} else {
header('Refresh: 3; URL=.');
$fs='17';
}
}
}
$lvl2 = '';
$lvl3 = '';
$lvl4 = '';
include("../inc/index.php");
?>
Сама функция mail возвращает true. При этом ничего не доходит. Пока стоял sendmail, форма отправлялась очень медленно. Сейчас поставил esmtp, стало быстро, но по прежнему безрезультатно. 25 порт сейчас закрыт, потому что, как я понял, esmtp не работает в виде демона. Когда стоял sendmail, порт был открыт. Может, дело в провайдере или gmail`e?