如何使用核心php在服务器中发送电子邮件?

问题描述:

我写了一封邮件发送php代码并上传到服务器上。这是工作和电子邮件正在发送到收件箱。但是,当我上传相同的代码到另一台服务器上,它不起作用,邮件没有被发送,但消息“您的消息已成功发送”正在显示。为什么这样?谁能告诉?如何使用核心php在服务器中发送电子邮件?

+0

你能分享一些你的代码吗? – Drudge

+0

很可能是因为您的服务器未配置为发送电子邮件。 – Epodax

+0

如何配置服务器? – anumol

有很多共享虚拟主机提供商谁已禁用PHP的mail()函数。

你可以做的是切换到,例如:PHPMailer

+0

当我使用phpgmailer这个错误显示“fsockopen()[function.fsockopen]:无法连接到ssl://smtp.gmail.com:465(权限被拒绝)/ home/www/xxxxxx/website/phpgmailer /class.smtp.php 105行 ErrorSMTP错误:无法连接到SMTP主机。“。任何人都可以说这个错误是什么? – anumol

没有看到你的代码i'ts无法告诉你为什么它不工作。

你说你得到消息“你的消息已经发送成功”,但这不是来自send()命令的响应 - 应该是一个布尔值 - 因此请检查你的代码是否正确读取并重新编译正确的结果。

如果send()返回true,则表示您的消息已离开服务器,但并不表示它已到达目的地。由于某种原因,收件人服务器很可能会阻止您的新服务器。

我的建议是使用外部SMTP服务器发送邮件,以便在您的应用托管的位置保持一致。亚马逊SES非常好,价格便宜,并且允许您轻松监控反弹。

这是我的代码phpgmailer。这显示了上述错误。

 <?php 


    $name = $_POST['fname']; 
    $telephone = $_POST['phone']; 
    $mobile = $_POST['mobile']; 
    $email = $_POST['email']; 
    $subject = $_POST['subject']; 
    $msg = $_POST['message']; 


    require_once("phpgmailer/class.phpgmailer.php"); 
    $mail=new PHPGMailer(); 
    $mail->Username="cd4xltech"; 
    $mail->Password="dfddfdfddf"; 
    $mail->From="[email protected]"; 
    $mail->FromName=$name; 
    $mail->Subject="Feedback:".$subject; 
     $mail->AddAddress("[email protected]"); 
    $mail->Body=$message."From: $name"; 
    if(!$mail->Send()) 
    { 
echo "Error".$mail->ErrorInfo; 
     } 
    else 
    { 
echo "Mail Sent"; 
     } 


     ?>