Доброго времени суток! Возможно кто-то знает как решить мою проблему...
Есть прокси-сервер на котором установлен IIS + PHP. На PHP написана форма с которой данные методом POST передаются на другую страницу с которой отправляется почта. При этом, если сообщение отправляется с локальной сети, то все работает, как часы. Если отправлять из вне (НЕ из локалки), то соощения не доходят до получателя. Даже в логах Керио-Маил-Сервера - все пусто, как-будто никто и ничего не отправлял.
Вот код, который использую для отправки сообщения:
Цитата:
$server = "Proxy";
$to = "to@site.ru";
$toname = "to";
$from = "clients@site.ru";
$subject = "Сообщение";
$err = '';
//здесь проверка инфы введенной с формы
if ($err == '')
{
$message = "ФИО: ".$_POST['FIO']."nКонтактный телефон: ".$_POST['PHONE'].
"nГород: ".$_POST['CITY']."nУлица: ".$_POST['STREET'].
"nДом: ".$_POST['HOME']."nКвартира: ".$_POST['KV'].
"nНаименование изделия: ".$_POST['NAME']."nТорговая марка:
".$_POST['MARK'].
"nМодель: ".$_POST['MODEL']."nДефект: ".$_POST['DEFECT']."nВид ремонта:
".$TYPE;
$connect = fsockopen ($server, 25, &$errno, &$errstr, 100);
if(!$connect)
{
echo "$errstr ($errno)<br>n";
}
else
{
fputs($connect, "HELO\r\n");
fputs($connect, "MAIL FROM: $from\n");
fputs($connect, "RCPT TO: $to\n");
fputs($connect, "DATA\r\n");
fputs($connect, "Content-Type: text/plain; charset=Windows-1251\n");
fputs($connect, "To: $tonamen");
fputs($connect, "From: "".$_POST['FIO'].""\n");
fputs($connect, "Subject: $subjectn");
fputs($connect, "\n\n");
fputs($connect, stripslashes($message)."\ r\n");
fputs($connect, ".\r\n");
fputs($connect, "RSETrn");
fgets($connect, 128);
fclose($connect);
echo "Заявка отправлена";
//Здесь пытался записать эту же информацию в файл - ВСЕ записывается
//из внешней сети
}
}
else
{
echo "<b>ОШИБКА!</b><br>";
}
Возможно ли такое, что из-за плохого соединения fclose($connect) - выполняется сильно рано и сервер просто не успевает обработать сообщение?
|