Веб приложение - Посылать электронную почту с электронной почтой пользователя

Мы работаем в программном обеспечении управления, где мы хотим, чтобы пользователь смог посылать электронные почты Вашим клиентам с Веб приложения с Вашей электронной почтой, и чтобы он не был с нашим собственным приложения. Оказывается, что для этого у нас должен быть электронная почта и пароль клиента, но мы сомневаемся в, каков лучший способ, если в том, чтобы хранить Ваши верительные грамоты и encriptar и desencriptar пароль каждый раз, когда он послал электронную почту, или если существует другой способ более безопасный, чем этот, так как он предполагает отверстие безопасности.

С другой стороны, может быть очень тоскливым должное быть быть, обучая пользователя, который Ваш поставщик электронной почты нужно конфигурировать (gmail, hotmail...) для того, чтобы он позволил посылать эти электронные почты с нашего приложения.

Очень благодарные за любой вклад!

1
задан 07.03.2019, 20:56
1 ответ

Ты можешь делать это с книжным магазином PHPMailer и несколькими советами от безопасности.

ты Можешь загружать пакет PHPMailer прямо aquГ-: https://github.com/Synchro/PHPMailer/archive/master.zip

Как только мы находим разгруженным пакет мы идем разжимать контент в каталоге названном "PHPMailer" внутри главного корня нашего сайта PHP и мы добавим, что посредством "includes" librerГ-схвати необходимые в начале нашей pГЎgina PHP.

require_once('../PHPMailer/class.phpmailer.php');
include("../PHPMailer/class.smtp.php");

Сейчас, мы создадим объект и будем конфигурировать какие-то parГЎmetros, чтобы посылать почту в travГ©s нашей считал PHP:

$mail  = new PHPMailer();

//asigna a $body el contenido del correo electrónico
$body = "Contenido del cuerpo del correo"; 

// Indica que se usará SMTP para enviar el correo
$mail->IsSMTP(); 

$mail->SMTPDebug  = 2;                     
// Activar los mensajes de depuración, 
// muy útil para saber el motivo si algo sale mal
// 1 = errores y mensajes
// 2 = solo mensajes entre el servidor u la clase PHPMailer

$mail->SMTPAuth = true;
// Activar autenticación segura a traves de SMTP, necesario para gmail

$mail->SMTPSecure = "tls";
// Indica que la conexión segura se realizará mediante TLS

$mail->Host = "smtp.gmail.com";
// Asigna la dirección del servidor smtp de GMail

$mail->Port = 587;
// Asigna el puerto usado por GMail para conexion con su servidor SMTP

$mail->Username = "tucorreo@gmail.com";  
// Indica el usuario de gmail a traves del cual se enviará el correo

$mail->Password = "tu contraseña";
// GMAIL password

$mail->SetFrom('name@yourdomain.com', 'First Last'); 
//Asignar la dirección de correo y el nombre del contacto que aparecerá cuando llegue el correo

$mail->Subject = "Probando enviar un correo con PHPMailer y GMail"; 
//Asignar el asunto del correo

//$mail->MsgHTML($body); 
//Si deseas enviar un correo con formato HTML debes descomentar la linea anterior

$mail->AddAddress("jonnathang@servidorcorreo.com", "Jonnathan Gutierrez"); 
//Indica aquí la dirección que recibirá el correo que será enviado

if(!$mail->Send()) {
  echo "Error enviando correo: " . $mail->ErrorInfo;
} else {
  echo "Correo enviado!!!";
}

И этой формы уже podrГЎs пытаться envГ - или почты с PHP с твоим счетом GMail . Если ты хочешь протестировать посылать с Hotmail/Outlook или Yahoo, ты должен использовать следующую combinaciГіn серверов и портов:

Outlook/Hotmail

$mail->Host = "smtp-mail.outlook.com";
$mail->Port = 587;
$mail->Username = "tucorreo@outlook.com"; //o bien tucorreo@hotmail.com  
$mail->Password = "tu contraseña";

Yahoo:

$mail->Host = "smtp.mail.yahoo.com";
$mail->Port = 465;
$mail->Username = "tucorreo@yahoo.com";
$mail->Password = "tu contraseña"; 

С немного lГіgica, какие-то if и buttons select's, ты можешь говорить пользователю, чтобы он выбрал Вашу услугу почты, и объединяешь API платформ для login или просишь Ваши верительные грамоты и форзацы encriptadas, и что были переданы SSL.

Какие-то конечные советы:

  • , В случае когда она хотела послать почту в travГ©s gmail, hotmail, outlook или yahoo, asegГєrate использования в $mail-> SetFrom, (почта, nombrecontacto) та же почта, что ты распределяешь в $mail-> Username, если ты это не заставляешь твой почтовый сервер или почтовый сервер адресата podrГ-an помечать почту как "SPAM" или попытка suplantaciГіn тождества, и почта никогда не прибывала в почтовый ящик адресата.

  • , Если ты хочешь послать рекламу посредством одной pГЎgina PHP, я рекомендую тебе уважать пределы почты системы почты, которую ты использовал. Например GMail позволяет посылать только 100 ежедневных типов почты. Твой адрес электронной почты podrГ, - чтобы быть блокированной одним или нескольким dГ-туз, если ты преодолеваешь этих lГ-mites.

  • , В случае когда ты используешь gmail, outlook, hotmail или yahoo, в $mail-> Username ты должен использовать полную почту с доменом (tucorreo@hotmail.com, tucorreo@gmail.com...), не только имя пользователя.

1
ответ дан 19.11.2019, 22:26