Я хочу знать, как получить SMTP-сервер для использования PHPMailer
для отправки автоматических писем с моим созданным электронным письмом (email@mydomain.com).
Мой веб-хост не предоставляет его. Я привел свой домен в OnlyDomains
а мой веб- 000Webhost
– 000Webhost
.
<?php require './PHPMailer-master/PHPMailerAutoload.php'; $mail = new PHPMailer; $mail->isSMTP(); // Set mailer to use SMTP $mail->Host = ''; // Specify main and backup SMTP servers $mail->SMTPAuth = true; // Enable SMTP authentication $mail->Username = 'noreply@mydomain.com'; // SMTP username $mail->Password = '********'; // SMTP password $mail->SMTPSecure = 'tls'; $mail->From = 'noreply@mydomain.com'; $mail->FromName = 'Admin'; $mail->addAddress('sdfsdf@hotmail.com'); // Name is optional $mail->WordWrap = 50; // Set word wrap to 50 characters $mail->isHTML(true); // Set email format to HTML $mail->Subject = 'swag'; $mail->Body = 'This is the HTML message body <b>in bold!</b>'; $mail->AltBody = 'This is the body in plain text for non-HTML mail clients'; if(!$mail->send()) { echo 'Message could not be sent.'; echo 'Mailer Error: ' . $mail->ErrorInfo; } else { echo 'Message has been sent'; } ?>
Вы должны увидеть, позволяет ли ваш веб-хост использовать sendmail
в своей системе. С помощью sendmail
не требуется sendmail
. Скорее всего, это так, потому что это стандартная часть большинства настроек Linux / Unix. И поскольку вы говорите, что ваш веб-хостинг 000WebHost
кажется, что они поддерживают использование sendmail
:
Вы можете использовать функцию mail () PHP для отправки почты своим посетителям …
Но они также, похоже, предлагают SMTP в своем пакете премиум-класса .
В прошлом я бы порекомендовал не беспокоиться о SMTP и придерживаться sendmail
. Глядя на документацию для PHPMailer
кажется, что библиотека может использовать sendmail
:
Функция PHP mail () обычно отправляется через локальный почтовый сервер, как правило, с помощью бинарного файла sendmail на платформах Linux, BSD и OS X , однако Windows обычно не включает локальный почтовый сервер; Встроенная SMTP-реализация PHPMailer позволяет отправлять электронную почту на платформах Windows без локального почтового сервера.
Затем, смотря в examples/
папке в репозитории PHPMailer
есть пример sendmail
:
require '../PHPMailerAutoload.php'; //Create a new PHPMailer instance $mail = new PHPMailer(); // Set PHPMailer to use the sendmail transport $mail->isSendmail(); //Set who the message is to be sent from $mail->setFrom('from@example.com', 'First Last'); //Set an alternative reply-to address $mail->addReplyTo('replyto@example.com', 'First Last'); //Set who the message is to be sent to $mail->addAddress('whoto@example.com', 'John Doe'); //Set the subject line $mail->Subject = 'PHPMailer sendmail test'; //Read an HTML message body from an external file, convert referenced images to embedded, //convert HTML into a basic plain-text alternative body $mail->msgHTML(file_get_contents('contents.html'), dirname(__FILE__)); //Replace the plain text body with one created manually $mail->AltBody = 'This is a plain-text message body'; //Attach an image file $mail->addAttachment('images/phpmailer_mini.png'); //send the message, check for errors if (!$mail->send()) { echo "Mailer Error: " . $mail->ErrorInfo; } else { echo "Message sent!"; }