我在这里需要一些帮助。
我正在做一个php自定义邮件发送表单,我需要为用户设置自定义选项 - 端口,主机,smtp电子邮件,smtp传递,smtp用户名,还有启用或禁用smtp的选项,这些全部工作,但我有一个情况。
我还想为用户启用SSL选项,因此如果用户选择SSL为是,那么它将使用SSL发送以防止电子邮件进入垃圾邮件。但我无法做到这一点,任何人都可以帮助我。
这是我正在使用的代码,请检查并协助任何人 -
https://www.dropbox.com/s/m7ltrl8q0dxic4v/smtpmail-dummy.zip?dl=0
答案 0 :(得分:0)
这里为此设置 PHPMailer 类的 SMTPSecure 属性为'ssl'。然后使用SmtpConnect()方法连接它。
所以基本上你可以编写如下代码。不完全是,仅供参考。
<?php
$mail = new PHPMailer; // call the class
$mail->IsSMTP();
$mail->Host = SMTP_HOST; //Hostname of the mail server
$mail->Port = SMTP_PORT; //Port of the SMTP like to be 25, 80, 465 or 587
$mail->SMTPAuth = true; //Whether to use SMTP authentication
$mail->Username = SMTP_UNAME; //Username for SMTP authentication any valid email created in your domain
$mail->Password = SMTP_PWORD; //Password for SMTP authentication
$mail->AddReplyTo("developer@vrstamphead.com", "Developer Rakesh");
//reply-to address
$mail->SetFrom("developer@vrstamphead.com", "Developer Rakesh"); //From address of the mail
// put your while loop here like below,
$mail->Subject = "Your SMTP Mail"; //Subject od your mail
$mail->AddAddress($email, "Asif18"); //To address who will receive this email
$mail->MsgHTML("<b>Hi, your first SMTP mail has been received. Great Job!.. <br/><br/>by <a href='http://www.asif18.com/7/php/send-mails-using-smtp-in-php-by-gmail-server-or-own-domain-server/'>Asif18</a></b>"); //Put your body of the message you can place html code here
if ($_SESSION['enable_ssl'] = 1) { // 1 for true and 0 for false
$mail->SMTPSecure = '';
$mail->SmtpConnect();
}
$send = $mail->Send(); //Send the mails
if($send){
echo '<center><h3 style="color:#009933;">Mail sent successfully</h3></center>';
}
else{
echo '<center><h3 style="color:#FF3300;">Mail error: </h3></center>'.$mail->ErrorInfo;
}
?>
如果您提供正确的方式,也可以使用$_SESSION['enable_ssl']
而不是$_POST['enable_ssl']
。
希望这会有所帮助......