<?php
require_once('class.phpmailer.php'); //下载的文件必须放在该文件所在目录
$address=$_POST['address'];
echo $address."<br/>";
$mail = new PHPMailer(); //建立邮件发送类
$address = $_POST['address']; 
$mail->IsSMTP(); // 使用SMTP方式发送
$mail->Host = "smtp.163.com"; // 您的企业邮局域名
$mail->SMTPAuth = true; // 启用SMTP验证功能
$mail->Username = "*********@163.com"; // 邮局用户名(请填写完整的email地址)
$mail->Password = "********"; // 邮局密码
$mail->From = "******@163.com"; //邮件发送者email地址
$mail->FromName = "";
$mail->AddAddress("$address", "QQ");//收件人地址,可以替换成任何想要接收邮件的email信箱,
$mail->Subject = "PHPMailer测试邮件"; //邮件标题
$mail->Body = "Hello,这是测试邮件"; //邮件内容
$mail->AltBody = "This is the body in plain text for non-HTML mail clients"; //附加信息,可以省略if(!$mail->Send())
{
echo "邮件发送失败. <p>";
echo "错误原因: " . $mail->ErrorInfo;
exit;
}echo "邮件发送成功";
?>Warning: preg_match() [function.preg-match]: Compilation failed: reference to non-existent subpattern at offset 626 in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\class.phpmailer.php on line 667
邮件发送失败. 
错误原因: You must provide at least one recipient email address.

解决方案 »

  1.   

    $mail->AddAddress($address, "QQ");   //这样呢
      

  2.   

    echo $address  ;  //是什么值
      

  3.   

    输出你的 $address看看,可能不是正确的邮箱地址
      

  4.   

    我已经输出了,待我改了之后又出现新的问题
    Could not instantiate mail function. 邮件发送失败. 
    错误原因: Could not instantiate mail function
      

  5.   

    $mail->SMTPDebug  = 1;   //加上这句看能不能找到原因
      

  6.   

    没有用,结果也是Could not instantiate mail function. 邮件发送失败. 
    错误原因: Could not instantiate mail function.
      

  7.   

    你的163账号是否是一个有效的账号。试试QQ邮箱能发吗
    $mail->AddAddress($address);   //改成这样试试
      

  8.   

    不行,我觉得应该不是编码的问题,是php.ini配置问题
      

  9.   

    我在一些网站找到只言片语,不过打不开里面的具体内容
     
    Email Error: Could not instantiate mail function 这其实是我们设置不当造成的,后台email设置里要求我们以这种各式: name 如果不这样设置 ...
      

  10.   

    我也是遇到同样问题,在win环境调试完全正常,移植到centos5.9就出现这个了
    Invalid address: [email protected]邮件发送失败,错误信息:You must provide at least one recipient email address.