2014-11-06 3 views
0

Мне нужна помощь, чтобы добавить smtp в мою забытую функцию пароля. Функция не отправляет электронную почту, я проверил ее с хостом, и они сказали, что я должен добавить их smtp в скрипт. smtp is: smtp.axentus.netдобавить smtp в php mail функцию

Я не знаю, где я должен добавить его и как.

Пожалуйста, помогите.

<?php 
$_language->read_module('lostpassword'); 

if(isset($_POST['submit'])) { 
    $email = trim($_POST['email']); 
    if($email!=''){ 
     $ergebnis = safe_query("SELECT * FROM ".PREFIX."user WHERE email = '".$email."'"); 
     $anz = mysql_num_rows($ergebnis); 

     if($anz) { 

      $newpwd=RandPass(6); 
      $newmd5pwd=md5($newpwd); 

      $ds = mysql_fetch_array($ergebnis); 
      safe_query("UPDATE ".PREFIX."user SET password='".$newmd5pwd."' WHERE userID='".$ds['userID']."'"); 

      $ToEmail = $ds['email']; 
      $ToName = $ds['username']; 
      $vars = Array('%pagetitle%', '%username%', '%new_password%', '%homepage_url%'); 
      $repl = Array($hp_title, $ds['username'], $newpwd, $hp_url); 
      $header = str_replace($vars, $repl, $_language->module['email_subject']); 
      $Message = str_replace($vars, $repl, $_language->module['email_text']); 

      if(mail($ToEmail,$header, $Message, "From:".$admin_email."\nContent-type: text/plain; charset=utf-8\n")) 
      echo str_replace($vars, $repl, '<div id="box-login"> 
     <div id="box-login-content"> 
      <form method="post" action="lostpassword/"> 
      <b>Your account '.$ds['email'].' has been found.</b><br /><br /> 
      You will get an e-mail with your account data in a few seconds. 
     </form> 
     </div> 
     </div>'); 
} 

?> 

ответ

0

Я советую используя PHPMailer (https://github.com/PHPMailer/PHPMailer/http://phpmailer.worxware.com/) - это очень простой в использовании, я использую это сам для сайта, который нуждается в SMTP

Чтобы отправить с помощью SMTP с PHPMailer просто добавьте следующие строки:

$mail->IsSMTP(); 
$mail->Host = "smtp.axentus.net"; 
+0

Где я могу добавить эти строки? –

+0

К сожалению, я был в отпуске .. См. Эту ссылку для примера того, как использовать PHPMailer http://phpmailer.worxware.com/?pg=examplebsmtp – Danieloplata

+0

В процессе загрузки также должна быть папка с именем «пример» в в котором вы найдете файл с именем «test_smtp_basic.php». – Danieloplata

0

вы посмотрите на http://4rapiddev.com/php/phpmailer-send-email-html-content-with-utf-8-encoding/, которая обеспечивает полностью PHP исходного кода вы сможете настроить отправку почты через SMTP можете.

+0

Таким образом, изменение в phpmailer - это лучший способ получить эту работу? Я новичок в php, поэтому я не знаю, как это сделать. –

+0

Это не единственный способ, просто самый легкий. Супер прост в использовании и отлично работает - отсюда и популярность. – Danieloplata