Как мне настроить Sparkpost smtp - PullRequest
0 голосов
/ 18 февраля 2019

Я немного запутался с настройкой Sparkpost SMTP.Мне нужно отправить автоматическое электронное письмо с моего сайта клиентам, например.приветственное сообщение при регистрации, электронное письмо с напоминанием для консультации и т. д. Веб-сайт автоматически сгенерирует электронное письмо.

На Sparkpost они показывают:

define('PHPMAILERHOST', 'smtp.sparkpostmail.com');
$phpmailer_smtpuser = 'SMTP_Injection';
$phpmailer_smtppassword = '<API_KEY>';
define('PHPMAILERPORT', 587);

Однако, когда я искал дополнительную информацию о Stackoverflow, я нашел это:

$config['mailtype'] = "html";
$config['protocol'] = 'smtp';
$config['smtp_host'] = 'smtp.sparkpostmail.com';
$config['smtp_user'] = 'user';
$config['smtp_pass'] = 'password';
$config['smtp_crypto'] = 'tls';
$config['smtp_port'] = '587';
$condig['crlf'] = "\r\n";
$config['newline'] = "\r\n";

В свете вышесказанного, будетследующая работа:

//Sparkpost configuration
$config['mailtype'] = "html";
$config['protocol'] = 'smtp';
$config['smtp_host'] = 'smtp.sparkpostmail.com';
$config['smtp_user'] = 'user';
$config['smtp_pass'] = 'password';
$config['smtp_crypto'] = 'tls';
$config['smtp_port'] = '587';
$condig['crlf'] = "\r\n";
$config['newline'] = "\r\n";

//My email code
$to_email = "$Email";
$from_email = "me@mydomain";
$subject = "Email Subject";
$comment =  "<html>Email message</html>";

// Always set content-type when sending HTML email
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";

// More headers
$headers .= "From: Info <" . $from_email . ">\r\n";
//send email
mail($to_email, "$subject", $comment, $headers);

Причина, по которой я спрашивал, я не хочу, чтобы настройка, тестирование и электронная почта проходили, и, хотя у меня сложилось впечатление, что моя установка Sparkpost работает, электронная почта проходитмой хозяин.

1 Ответ

0 голосов
/ 18 февраля 2019

Если вы хотите использовать SparkPost, вы можете либо использовать их библиотеку, либо, как предложил Джон Стирлинг, использовать PHPMailer с конфигурациями SparkPost.

Использовать библиотеку PHP SparkPost

  • Прочитать инструкции по установке здесь
  • После установки см. Примеры каталог для многих случаев использования

Использовать PHPMailer

  • Включить класс phpMailer в ваш скрипт

  • Настройте его для использования SparkPost, например ниже

$mail = new PHPMailer;
$mail->SMTPDebug = 3;
$mail->isSMTP();
$mail->Host = 'smtp.sparkpostmail.com';
$mail->Port = 587;
$mail->SMTPSecure = 'tls';
$mail->SMTPAuth = true;
$mail->Username = 'SMTP_Injection';
$mail->Password = '<API_KEY>'; //make sure you add SMTP permission to API Key
$mail->setFrom('testing@sparkpostbox.com'); //you can use w/o adding your sending domain like ~50 messages. Once you add your sending domain, use that. 
$mail->addAddress('recipient@domain.com');
$mail->Subject = 'Test subject';
$mail->Body    = 'Hello World!';
$mail->send();
...