2016-12-30 5 views
1

Я бы хотел отправить письмо с моей php-формы. Первоначально я использовал функцию php mail, и она работала нормально. Но недавно я переместил свой сервер из Windows в Linux, в котором SMTP является обязательным. Мне не предоставлен доступ к файлу php.ini. Поэтому я использую функцию phpMailer. Но когда я использую PHPMailer, он дает мне следующую ошибкуPHPMailer с SMTP-данными

Invalid address: (punyEncode) abc-domain Mailer Error: Invalid address: (punyEncode) abc-domain.

Моему имя пользователь не является моей электронной почтой т.е. [email protected] но а-домен. Вот мой код. У меня есть файлы PHPMailer в папке PHPMailer.

<?php 
require('PHPMailer/PHPMailerAutoload.php'); 

$mail = new PHPMailer; 

$mail->CharSet = "UTF-8"; 


$mail->SMTPDebug = 3;        

$mail->isSMTP();    

$mail->Host = "mail.abc.com"; 

$mail->SMTPAuth = true;       

$mail->Username = "abc-domain";     
$mail->Password = "abc123";       

$mail->Port = 25;         

$mail->From = "abc-domain"; 
$mail->FromName = "Webmaster-Domain"; 

$mail->addAddress("[email protected]", "xyz"); 

$mail->isHTML(true); 

$mail->Subject = "Subject Text"; 


$mail->Body = '<h1 style="font-family: Arial;">HTML Text</h1>'; 

if(!$mail->send()) 
{ 
    $mail->SMTPDebug = true; 
    echo "Mailer Error: " . $mail->ErrorInfo; 
} 
else 
{ 
    echo $success; 
} 
?> 

Есть ли способ настроить SMTP-данные через .htaccess?

ответ

3

Проблема здесь

$ mail-> С = "АБВ-домен";

Это должен быть действительный адрес электронной почты, даже если пользователь не является (что хорошо, потому что вам это нужно здесь $ mail-> Имя пользователя только)

+0

Благодаря Самуэль. Ты спас меня :) Это работает. – Rajesh

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

  • Нет связанных вопросов^_^