首页 文章

GMX联系表格

提问于
浏览
0

我正在尝试在phpMailer的帮助下为我的主页创建一个简单的SMTP联系表单,但它无法正常工作 . 它应该将“名称,邮件,主题,消息”字段的信息转发到我的邮箱(在本例中为“姓名,邮件,主题,消息”) . 输入字段在我的html代码中也被命名为“name,mail,subject,message” .

谁能告诉我我做错了什么?谢谢你的建议 .

<?
  require('class.phpmailer.php');    
  require('class.smtp.php');

    $mail = new PHPMailer(); 
            $mail->CharSet  =  "utf-8";
            $mail->IsSMTP();
            $mail->Host       = 'mail.gmx.de';
            $mail->SMTPDebug  = 0;                     
            $mail->SMTPAuth   = true;           
            $mail->SMTPSecure = "ssl";                 
            $mail->Port       = 465;                     
            $mail->Mailer   = "ssl"; 
            $mail->Password = "****"; 
            $mail->Username = "test@gmx.com"; 
            $mail->SMTPAuth  =  "true"; 

            $mail->FromName = $_POST['name']; 

            $mail->AddAddress = $_POST['mail'];  

            $mail->Subject = $_POST['subject'];  

            $mail->Body = $_POST['message']; 

            if(!$mail->Send())   
            {  
            echo 'E-Mail not send.';  
            echo 'Mailer error: ' . $mail->ErrorInfo;  
            }   
            else   
            {  
            echo "<h5>" . 'Thanks for your message' . "</h5>";  
            }  
?>

1 回答

  • 0

    错误消息显示您缺少收件人地址,您必须使用以下内容添加一个:

    $mail->AddAddress("youemail@youremail.com", "Your Name");
    //Your Name is optional. so alternatively you could do:
    //$mail->AddAddress("youemail@youremail.com");
    

    您引用的代码部分 $mail->Username = "test@gmx.com"; 只是设置用于通过SMTP服务器进行身份验证的用户名,而不是收件人地址 .

相关问题