Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> mail() 
:(
    Опции темы
uzverok
Дата 28.1.2010, 20:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 20.2.2009

Репутация: нет
Всего: нет



Возникла проблема при отправке почты с сервера(операционка- Линукс), пробовал даже вручную прописывать в ini_set путь к смтп, ничего не дало, в чем может быть проблема? Как я понял если на хостинге все правильно настроено, должно работать автоматом. Вот текст тестового скрипта:
Код

if($_POST['submit']) {
       $title = substr(htmlspecialchars(trim($_POST['title'])), 0, 1000);
       $mess =  substr(htmlspecialchars(trim($_POST['mess'])), 0, 1000000);
       $to = 'mail';
       $from='mail';
       if(mail($to, $title, $mess, 'From:'.$from))
       echo 'Сообщение отправлено!';

}

PM MAIL   Вверх
NLspieler
Дата 29.1.2010, 08:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 619
Регистрация: 13.10.2008
Где: Берлин

Репутация: 16
Всего: 19



А что происходит при попытке отправить сообщения? Появляются ли сообщения об ошибке?
Может быть скрипт говорит, что письмо отправлено, но оно не приходит?



$to = 'mail';
$from='mail';
И еще, может быть все дело в том, что в поле $to ты не прописываешь корректный адрес. 



PM MAIL   Вверх
Guedda
Дата 29.1.2010, 12:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

Репутация: 13
Всего: 78



Описывайте проблему полностью, пожалуйста...

И, да. Ошибка в 17 строке.


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
uzverok
Дата 29.1.2010, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 20.2.2009

Репутация: нет
Всего: нет



Цитата(NLspieler @  29.1.2010,  08:33 Найти цитируемый пост)
А что происходит при попытке отправить сообщения? Появляются ли сообщения об ошибке?
Может быть скрипт говорит, что письмо отправлено, но оно не приходит?

При отправке сообщения, если проверяю через if, ничего не выдает, тоесть не отправляет сообщение, никаких ошибок тоже не выдает(пробовал включать отчеты- результат тот же).

Цитата(NLspieler @  29.1.2010,  08:33 Найти цитируемый пост)
И еще, может быть все дело в том, что в поле $to ты не прописываешь корректный адрес. 

Задаю существующий ящик, пробовал и на gmail, и на mail.ru


Цитата(Guedda @  29.1.2010,  12:31 Найти цитируемый пост)
И, да. Ошибка в 17 строке. 

Там же всего 9 строк..

З.Ы.: хостер- megabyet.net, может у кого была такая же проблема?
PM MAIL   Вверх
NLspieler
Дата 29.1.2010, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 619
Регистрация: 13.10.2008
Где: Берлин

Репутация: 16
Всего: 19



Попробуй использувать эту функцию для отправки емэйлов. 
У меня она отлично работает. Отсылает пиьма в UTF8 кодировке
Код

function mail_utf8 (    $name_from,   // Имя отправителя
                        $email_from,  // email отправителя
                        $name_to,     // Имя получателя
                        $email_to,    // email получателя 
                        $subject,     // Заголовок пиьсьма
                        $body         // Текст письма
                    ) 

    $data_charset = 'UTF-8' ; // кодировка переданных данных 
    $send_charset = 'UTF-8' ; // кодировка письма 
    $to = mime_header_encode($name_to, $data_charset, $send_charset) . ' <' . $email_to . '>' ; 
    $subject = mime_header_encode($subject, $data_charset, $send_charset) ; 
    $from =  mime_header_encode($name_from, $data_charset, $send_charset) .' <' . $email_from . '>' ; 
    if($data_charset != $send_charset) 
    { 
        $body = iconv($data_charset, $send_charset, $body); 
    } 
    $headers = "From: $from\r\n"; 
    $headers .= "Content-type: text/plain; charset=$send_charset\r\n"; 

    return mail($to, $subject, $body, $headers); 


function mime_header_encode($str, $data_charset, $send_charset) 

    if($data_charset != $send_charset) 
    { 
        $str = iconv($data_charset, $send_charset, $str); 
    } 
    return '=?' . $send_charset . '?B?' . base64_encode($str) . '?='; 


PM MAIL   Вверх
s0lman
Дата 29.1.2010, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и лохматый
**


Профиль
Группа: Участник
Сообщений: 637
Регистрация: 1.11.2007
Где: Ukraine

Репутация: 9
Всего: 29



uzverok, смотреть в папку "Спам" не пробовали? (Иногда помогает  smile )


--------------------
Когда я уже выучусь на волшебника? :(
PM   Вверх
uzverok
Дата 29.1.2010, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 20.2.2009

Репутация: нет
Всего: нет



Цитата(NLspieler @  29.1.2010,  14:04 Найти цитируемый пост)
Попробуй использувать эту функцию для отправки емэйлов. 
У меня она отлично работает. Отсылает пиьма в UTF8 кодировке

Спасибо за скрипт, но он тоже не работает, скорее всего проблема с сервером..  smile Если на этом сервере неправильно настроен смтп, я могу отправлять почту с другого сервера смтп?

Цитата(s0lman @  29.1.2010,  14:59 Найти цитируемый пост)
uzverok, смотреть в папку "Спам" не пробовали? (Иногда помогает  smile ) 

Тоже сначала так подумал, проверил уже все папки smile  
PM MAIL   Вверх
Sentox
Дата 30.1.2010, 13:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


как то так
**


Профиль
Группа: Участник
Сообщений: 392
Регистрация: 27.1.2009
Где: Зимбабве

Репутация: 7
Всего: 7



нет, если if не срабатывает при отправке - значит ошибка в функции, спам спамом но условие не происходит!
PM MAIL   Вверх
uzverok
Дата 30.1.2010, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 20.2.2009

Репутация: нет
Всего: нет



Я могу подключить другой сервер смтп(например mail.ru) через ini_set? Только-что нашел сайт на этом же хосте, нашел раздел обратной связи написал сообщение админу и при отправке выбило ошибку, значит все-таки дело в сервере.. Уже несколько раз писал в службу поддержки- никаких результатов, как мне решить эту проблему?  

Это сообщение отредактировал(а) uzverok - 30.1.2010, 13:58
PM MAIL   Вверх
ZlojEzh
Дата 30.1.2010, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 8.10.2005
Где: Киев, Украина

Репутация: 10
Всего: 15



Попробуйте добавить в письмо заголовки Return-Path и Errors-To со своим e-mail и еще раз протестировать отправку.
Возможно получите интересную информацию.

А для подключения к другому smtp проще всего воспользоваться классом PHPMailer.
PM MAIL ICQ   Вверх
uzverok
Дата 31.1.2010, 11:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 20.2.2009

Репутация: нет
Всего: нет



Цитата(ZlojEzh @  30.1.2010,  15:55 Найти цитируемый пост)
Попробуйте добавить в письмо заголовки Return-Path и Errors-To со своим e-mail и еще раз протестировать отправку.
Возможно получите интересную информацию.

Попробовал, никаких ошибок не выдает.. Вчера достучался в службу поддержки, посоветовали использовать смтп gmail, создал учетку, прописал MX, проверил статус, все прописано, но отправка почты так и не заработала  smile  Подскажите, какие настройки нужно прописывать в пхп для правильной работы. 
PM MAIL   Вверх
sTa1kEr
Дата 31.1.2010, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


9/10 программиста
***


Профиль
Группа: Завсегдатай
Сообщений: 1553
Регистрация: 21.2.2007

Репутация: 56
Всего: 146



Функция mail() не использует SMTP сервер напрямую, вместо этого она использует sendmail. Соответственно, вам нужно убедится, что путь к sendmail'у указан верно. Если он указан верно, то проблемы в настройках самого sendmail'а.

Для отправки писем напрямую через SMTP сервер, нужно использовать сторонние библиотеки. 
PM MAIL   Вверх
uzverok
Дата 31.1.2010, 19:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 20.2.2009

Репутация: нет
Всего: нет



Установил PHPMailer и все заработало!  smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1316 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.