使用PHPMailer将电子邮件发送到Variable地址

时间:2010-09-28 13:06:15

标签: php variables phpmailer

我有一个我创建的表单,完成后会要求他们从下拉列表中选择他们希望通过电子邮件发送的人。

我的问题是如何将该变量添加到$ mailer。

现在它写得像这样

$mailer -> AddAddress('email@email.com','First Last');

我如何在那里得到我的变量

$mailer -> AddAddress($emailAddress) - Doesn't work.

我也试过

"'"$emailAddress"'" - 这给了我 - 地址无效:'email@email.com'令人沮丧,因为这是它正在寻找的格式。

谢谢,让我知道

这是我用来调用电子邮件的完整代码

$mail->Host       = "mail.yourdomain.com"; // SMTP server
$mail->SMTPDebug  = 2;                     // enables SMTP debug information (for testing)
$mail->SMTPAuth   = true;                  // enable SMTP authentication
$mail->Host       = "mail.yourdomain.com"; // sets the SMTP server
$mail->Port       = 26;                    // set the SMTP port for the GMAIL server
$mail->Username   = "yourname@yourdomain"; // SMTP account username
$mail->Password   = "yourpassword";        // SMTP account password
$mail->AddReplyTo('name@yourdomain.com', 'First Last');
$mail->AddAddress('whoto@otherdomain.com', 'John Doe');
$mail->SetFrom('name@yourdomain.com', 'First Last');
$mail->AddReplyTo('name@yourdomain.com', 'First Last');
$mail->Subject = 'PHPMailer Test Subject via mail(), advanced';
$mail->AltBody = 'To view the message, please use an HTML compatible email viewer!'; //     optional - MsgHTML will create an alternate automatically
$mail->MsgHTML(file_get_contents('contents.html'));
$mail->AddAttachment('images/phpmailer.gif');      // attachment
$mail->AddAttachment('images/phpmailer_mini.gif'); // attachment
$mail->Send();

5 个答案:

答案 0 :(得分:0)

尝试做

var_dump($emailAddress);

->AddAddress()电话会议之前,看看会发生什么。如果你是在一个函数中执行此操作,那么你可能没有将$ emailAddress作为参数传递,忘记了它global;

同样,请勿使用双引号括起电子邮件地址。没有必要:

$emailAddress = 'email@email.com';  // correct
$emailAddress = "email@email.com"; // correct
$emailAddress = '"email@email.com"'; // incorrect
$emailAddress = "\"email@email.com\""; // incorrect.

答案 1 :(得分:0)

如果$ emailAddress来自POST,请在值周围使用stripslashes。

确保选择框在标记中具有正确的值(检查您的查看源)。

根据建议,回显变量以进行检查。

答案 2 :(得分:0)

我开始工作,我的价值观存在问题。

实际上有一对。

让我们说一些拼写不正确。

感谢所有信息!

答案 3 :(得分:0)

下面给出的代码非常适合我。

$mail->AddAddress($_POST['email']); //直接使用phpmailer传递html表单中的值。

答案 4 :(得分:0)

试试strval($emailAddress),为我工作。