Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
1 / 1 / 0
Регистрация: 25.10.2013
Сообщений: 26
1

Отправка писем через smtp

14.10.2015, 23:03. Просмотров 686. Ответов 10
Метки нет (Все метки)


PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
ini_set( 'html_errors', false );
$_POST['t'] = 'mymail@yandex.ru'; - почта, куда придет письмо
$_POST['s'] = 'test';
$_POST['m'] = 'hello';
if ( empty( $_POST[ 't' ] ) || empty( $_POST[ 's' ] ) || empty( $_POST[ 'm' ] ) )
        die( 'Error: Missing parameters.' );
        
$to = $_POST['t'];
$subject = $_POST[ 's' ];
$conent = $_POST[ 'm' ];
    function smtpmail($to, $subject, $content, $attach=false)
    {
require_once('smtpconfek.php'); //путь до конфигурационного файла для вашего smtp сервера
require_once('class.phpmailer.php'); //путь до класса phpmailer
$mail = new PHPMailer(true);
 
$mail->IsSMTP();
try {
  $mail->Host       = $__smtp['host'];
  $mail->SMTPDebug  = $__smtp['debug'];
  $mail->SMTPAuth   = $__smtp['auth'];
  $mail->Port       = $__smtp['port'];
  $mail->Username   = $__smtp['username'];
  $mail->Password   = $__smtp['password'];
  $mail->AddReplyTo($__smtp['addreply'], $__smtp['username']);
  $mail->AddAddress($to);                //кому письмо
  $mail->SetFrom($__smtp['addreply'], $__smtp['username']); //от кого (желательно указывать свой реальный e-mail на используемом SMTP сервере
  $mail->AddReplyTo($__smtp['addreply'], $__smtp['username']);
  $mail->Subject = htmlspecialchars($subject);
  $mail->MsgHTML($contect);
  if($attach)  $mail->AddAttachment($attach);
  $mail->Send();
  echo "Message sent Ok!</p>\n";
} catch (phpmailerException $e) {
  echo $e->errorMessage();
} catch (Exception $e) {
  echo $e->getMessage();
}
}
Не знаю где ошибка, при выполнении скрипта письмо не приходит
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.10.2015, 23:03
Ответы с готовыми решениями:

Отправка писем через SMTP используя функцию SMTPMAIL
Добрый день! В интернете есть некая функция которая великолепно работает у многих и раньше её я...

Отправка вложений через SMTP
&lt;?php $config = $_POST; //Смените на имя своего почтового ящика. $config = 465; // Порт работы....

Отправка формы через smtp / PHPMailer
Доброго времени, уважаемые знатоки! Подскажите пожалуйста, как сделать отправку форм через smtp....

Отправка на почту через SMTP mail
Не могу найти как решить проблему в коде. Простая форма автоматической отправки сообщения людям на...

10
470 / 398 / 169
Регистрация: 04.01.2013
Сообщений: 1,675
14.10.2015, 23:11 2
Где вызов функции покажите
0
1 / 1 / 0
Регистрация: 25.10.2013
Сообщений: 26
14.10.2015, 23:14  [ТС] 3
от игрового сервера http запрос идет, методом пост, с параметрами t = szReceiver, s = szSubject, m = szMessage
0
470 / 398 / 169
Регистрация: 04.01.2013
Сообщений: 1,675
14.10.2015, 23:20 4
Ну в коде покажите, как вызываете функцию, здесь вижу только объявление
0
1 / 1 / 0
Регистрация: 25.10.2013
Сообщений: 26
14.10.2015, 23:25  [ТС] 5
https://github.com/Synchro/PHP... mailer.php вот класс phpmailer с набором функций
0
470 / 398 / 169
Регистрация: 04.01.2013
Сообщений: 1,675
14.10.2015, 23:40 6
Если сверху весь код, то Вам надо понять, что вы только объявили функцию (создали), но нигде не используете...Хотелось бы увидеть часть кода, в которой она используется
0
1 / 1 / 0
Регистрация: 25.10.2013
Сообщений: 26
14.10.2015, 23:55  [ТС] 7
уже написал, что от сервера только http запрос с методом post, больше там ничего нет, ошибка явно. Ранее письмо отправлялось через функцию mail(), переехали на другой хост, тут она отключена, можем отправлять только через SMTP, а вот как это делать сообразить не могу.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
ini_set( 'html_errors', false );
    
    
    if ( empty( $_POST[ 't' ] ) || empty( $_POST[ 'f' ] ) || empty( $_POST[ 'n' ] ) || empty( $_POST[ 's' ] ) || empty( $_POST[ 'm' ] ) )
        die( 'Error: Missing parameters.' );
    
    mail(
        $_POST[ 't' ],
        utf8_encode( $_POST[ 's' ] ),
        $_POST[ 'm' ],
        implode(
            "\r\n",
            array
            (
                'From: "' . addslashes( $_POST[ 'f' ] ) . "\" <{$_POST[ 'n' ]}>",
                "Reply-To: {$_POST['f']}",
                "X-Mailer: PHP/" . phpversion( ),
            )
        )
    );
Вот скрипт, который работал ранее
0
470 / 398 / 169
Регистрация: 04.01.2013
Сообщений: 1,675
15.10.2015, 00:30 8
так правильно здесь функция mail вызывается и ей передаются параметры. а у вас функция smtpmail ОБЪЯВЛЯЕТСЯ но вы ее не используете...слово function используется при объявлении
0
1 / 1 / 0
Регистрация: 25.10.2013
Сообщений: 26
15.10.2015, 00:36  [ТС] 9
даже если убрать function, ничего не меняется
0
470 / 398 / 169
Регистрация: 04.01.2013
Сообщений: 1,675
15.10.2015, 00:48 10
правильно, потому, что вы вызовете функцию, которая не объявлена...попробуйте в конце кода написать
PHP
1
smtpmail($to, $subject, $content);
0
171 / 166 / 75
Регистрация: 21.11.2014
Сообщений: 1,488
15.10.2015, 10:39 11
aspx, а Вы для чего этого делаете? Учитесь или что-то реализуете?
Если просто "надо сделать", то вот Вам решение
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.10.2015, 10:39

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Отправка писем через интервал
Всем доброго времени суток! Скажите, можно ли как-то реализовать задержку между отправкой писем?...

Отправка писем через форму
Есть php код для отправки писем более менее отправляет, задача следующая, как мне нужно его...

Отправка писем через функцию mail();
всем привет!... столкнулся с такой проблемой то, что не могу отправить письма по всей базе данных!...

Отправка писем через функцию mail();
всем привет!... встал вопрос отправки писем по базе зарегистрированных пользователей которые...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.