[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Народ Спасайте с этой почтой
Tapo4e4ek
Как вы обратили внимание пишу вам в пол шестого утра, всю ночь не спал - голову ломал, что ж такое в моем коде не верно. Выручайте, на вас вся надежда.


Моя форма отправки


HTML
<form action="send.php" method="post" >
<p>Введите имя:<br>
<input type="text" name="name"></p>
<p>Введите email:<br>
<input type="text" name="email"></p>
<p>Введите сообщение:<br>
<textarea name="message" rows="7" cols="40"></textarea>
<br>
<br>
<input type="submit" value="Отправить сообщение"></p>
</form>



А вот мой файл send.php

PHP
<?php
if 
(isset($_POST['name'])) {$name = $_POST['name']; if ($name == '') {unset($name);}}
if (isset($_POST['email'])) {$email = $_POST['email']; if ($email == '') {unset($email);}}
if (isset($_POST['message'])) {$message = $_POST['message']; if ($message == '') {unset($message);}}

 

/* Проверил заполнены ли все поля */
if (isset($name) && isset($email) && isset($message))
{

/* Убрал все лишние пробелы и переносы строк, а также преобразовал все теги HTML в символы*/
$name = htmlspecialchars(trim($name));
$email = htmlspecialchars(trim($email));
$message = htmlspecialchars(trim($message));

 

/* Проверил правильность ввода email-адреса */
if(!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $email))
{
echo "<p>Неправильный формат e-mail адреса!</p>";
}

/* сформировал сообщение */
$address = "na_milo@bk.ru";
$sub = "Сообщение с моего нового сайта!!!";
$mes = "Автор назвался: $name \n Оставил такой E-mail: $email \n Содержание письма: \n $message";

/* Отправил нах это треклятое сообщение */
$verify = mail ($address,$sub,$mes,"Content-type:text/plain; charset = windows-1251\r\nFrom:$email");
if ($verify == 'true')
{
echo "Сообщение отправлено!";
}
else 
{
echo "Сообщение не отправлено!";
}

 

}
else
{
echo "Вы заполнили не все поля!";
}


/* И это сообщение "сцуко" не доходит!!!!!!!!!!! */



Так в чем же моя ошибка?



Спустя 24 минуты, 27 секунд (8.07.2009 - 04:51) kirik написал(а):
Tapo4e4ek
С этого сервера, с которого пытаешься отправить, вообще письма через функцию mail() отправляются/лись? Какой сервер? В скрипте ошибок не вижу.

Спустя 1 час, 29 минут, 5 секунд (8.07.2009 - 06:20) Tapo4e4ek написал(а):
Это не с сервера, это со стандартного сайта с формой отправки на меил! unsure.gif

Спустя 25 минут, 15 секунд (8.07.2009 - 06:46) kirik написал(а):
Цитата (Tapo4e4ek @ 7.07.2009 - 22:20)
Это не с сервера, это со стандартного сайта с формой отправки на меил!

Хе smile.gif А "стандартный сайт с формой отправки на мэил" на каком сервере работает?

Спустя 40 минут, 33 секунды (8.07.2009 - 07:26) Tapo4e4ek написал(а):
А, ну пока у меня установлен Денвер. Так что он у меня на локалхосте находится. Кроме того я просил друга протестить, на его сайте, и ниче не выходит ни у меня ни у него! Такая вот фигня!!!!

Спустя 1 час, 12 минут, 17 секунд (8.07.2009 - 08:38) kirik написал(а):
Цитата (Tapo4e4ek @ 7.07.2009 - 23:26)
А, ну пока у меня установлен Денвер. Так что он у меня на локалхосте находится.

На локалхосте и не будет работать, если ты специально не настраивал мэил-сервер.

Цитата (Tapo4e4ek @ 7.07.2009 - 23:26)
Кроме того я просил друга протестить, на его сайте, и ниче не выходит ни у меня ни у него!

Только что запустил твой скрипт у себя - все работает хорошо. Ищите проблемы в сервере.

Спустя 49 минут, 41 секунда (8.07.2009 - 09:28) Tapo4e4ek написал(а):
Спасибо тебе, буду разбираться!

Спустя 45 минут, 41 секунда (8.07.2009 - 10:14) SeraFim написал(а):
Поищи в папке с денвером папочку tmp\!sendmail\ (по умолчанию - C:\WebServers\tmp\!sendmail\). в ней хранится вся почта, отправленная с локалхоста.

Спустя 6 часов, 21 минута, 1 секунда (8.07.2009 - 16:35) Tapo4e4ek написал(а):
Да, я смотрел в этой папке, письмо приходит, НО, по моему скрипту если вся информация не заполнена или меил записан не правильно - отправлятся ничего не должно! А тут даже если я ни одного поля не заполнил, все равно в папке tmp => !sendmail попадает письмо! Отсюда я делаю вывод, что
1. tmp это временная папка для хранения файлов
2. Туда попадает абсолютно все связанное с почтой даже если скрипт вообще не пашет а есть функция mail()

Спустя 2 часа, 52 минуты, 48 секунд (8.07.2009 - 19:28) kirik написал(а):
Цитата (Tapo4e4ek @ 8.07.2009 - 08:35)
по моему скрипту если вся информация не заполнена или меил записан не правильно - отправлятся ничего не должно! А тут даже если я ни одного поля не заполнил, все равно в папке tmp => !sendmail попадает письмо!

Понятно в чем вопрос был smile.gif

Провел ревизию, протесть:
PHP
/* Проверил заполнены ли все поля */
if (empty($_POST['name']) || empty($_POST['email']) && empty($_POST['message']))
{
    echo "Вы заполнили не все поля!";
}
/* Провеяем правильность почты */
elseif(!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $_POST['email']))
{
    echo "<p>Неправильный формат e-mail адреса!</p>";
}
/* Отправляем письмо */
else
{
    /* Убрал все лишние пробелы и переносы строк, а также преобразовал все теги HTML в символы*/
    $name = htmlspecialchars(trim($_POST['name']));
    $email = htmlspecialchars(trim($_POST['email']));
    $message = htmlspecialchars(trim($_POST['message']));

    /* сформировал сообщение */
    $address = "na_milo@bk.ru";
    $sub = "Сообщение с моего нового сайта!!!";
    $mes = "Автор назвался: $name \n Оставил такой E-mail: $email \n Содержание письма: \n $message";

    /* Отправил нах это треклятое сообщение */
    if (mail ($address$sub$mes"Content-type:text/plain; charset = windows-1251\r\nFrom:$email"))
    {
        echo "Сообщение отправлено!";
    }
    else 
    
{
        echo "Сообщение не отправлено!";
    }
}

Спустя 3 часа, 35 минут, 1 секунда (8.07.2009 - 23:03) Tapo4e4ek написал(а):
Нет, тоже не отправляется! Какая же может быть причина? Может хостинг не позволяет? Залавал на сайт в интернет, все равно без толку :-(

Спустя 2 часа, 45 минут, 26 секунд (9.07.2009 - 01:48) kirik написал(а):
Цитата (Tapo4e4ek @ 8.07.2009 - 15:03)
Может хостинг не позволяет?

Вполне может. Если хостинг бесплатный, то 99% что они не дают

Спустя 1 день, 7 часов, 21 минута, 20 секунд (10.07.2009 - 09:09) Tapo4e4ek написал(а):
Не, хост .сом Но не суть, спасибо, я нарыл уже готовый и хороший скрипт который работает и плюс вложения можно делать! Если интересно - могу дать!

Спустя 35 минут, 51 секунда (10.07.2009 - 09:45) kirik написал(а):
Цитата (Tapo4e4ek @ 10.07.2009 - 01:09)
Не, хост .сом

Это не хост, это называется "домен", адрес сайта. А хостинг - это где лежит твой сайт.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.