2015-03-04 2 views
-1

Ну, я нуждаюсь в небольшой помощи здесь.Настройка отправки почты в php с использованием ядра php

Я делаю форму отправки электронной почты для php, в которой мне нужно настроить пользовательскую настройку для пользователя - port, host, smtp email, smtp pass, smtp username, также есть возможность включить или отключить smtp, те все работают, но у меня есть ситуация здесь.

Я также хочу включить SSL-вариант для пользователя, поэтому, если пользователь выбирает SSL, да, то он будет отправлять с использованием SSL, чтобы предотвратить отправку электронной почты в СПАМ. но я не могу этого сделать, может ли кто-нибудь помочь мне в этом.

вот код, который я использую, пожалуйста, проверьте и помочь anyone-

https://www.dropbox.com/s/m7ltrl8q0dxic4v/smtpmail-dummy.zip?dl=0

ответ

0

Вот для этого установите SMTPSecure свойство PHPMailer класса к '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("[email protected]", "Developer Rakesh"); 
    //reply-to address 
    $mail->SetFrom("[email protected]", "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'], а если вы предоставляете это право путь.

Надеется, что это помогает ...

+0

уверен, я буду проверять его и разделю мой обзор. Надеюсь, что это работает! – xumi

+0

Конечно. Примите ответ, если он поможет вам найти решение. Его «тик» слева, когда вы нажимаете на него, становится зеленым, что означает, что ответ принят. –

+0

Я проверил, но я получаю ошибку- Ошибка почты: Ошибка SMTP connect(). – xumi

Смежные вопросы