我在使用PHP mail()函数时遇到问题。如您在下面看到的,我正在使用PHP mail()函数发送带有中文字符的HTML电子邮件。虽然发送$ studentInfo的第一个电子邮件在最终电子邮件中正确显示了文本,但是发送$ studentInfoEN的下一个命令却未正确显示。有什么想法吗?
PS $ name,$ phoneNumber,$ eMail等都是从HTML表单文本输入接收的所有文本字符串
<?php
$message="<html><body><p>Training Inquiry: ".$_GET["courseName"]." ".$trainerMonths[$userMonth]." ".$_GET["day"].", 2014 ".$_GET["enLoc"]."</p></body></html>";
$studentInfo="<html><body><p>
姓名: $name<br/>
电话号码: $phoneNumber <br/>
邮箱: $eMail<br/>
工厂名称: $factoryName<br/>
WRAP注册编号: $wrapNumber<br/>
所在国家: $homeCountry </p></body></html>";
$studentInfoEN="<html><body><p>
Name $name <br/>
Phone Number: $phoneNumber <br/>
E-mail: $eMail <br/>
Factory Name: $factoryName <br/>
WRAP Registration Number: $wrapNumber <br/>
Home Country: $homeCountry </p></body></html>";
$trainerHeaders = "From:".$email."\n"."Reply-To:".$email."\n"."Content-type:text/html;charset=utf-8;"."\n";
$clientHeaders = "From:".$trainerAddress."\n"."Reply-To:".$trainerAddress."\n"."Content-type:text/html;charset=utf-8;"."\r\n";
mail($trainerAddress,"Training Inquiry",$message.$studentInfoEN,$trainerHeaders);
mail($eMail,"Web Submission Confirmation","$automatedMessage"."$confirmMessage"."$studentInfo",$clientHeaders);
?>
这似乎是错误的,您在开始<html>
标记之前输出了一个字符串,body
并且html
在第一行关闭了您的and标记:
$studentInfoEN="
Name"."<html><body><p>$name</p></body></html>"."
应该可能只是:
$studentInfoEN="<html><body><p>Name: $name
编辑:除此之外,您正在串联两个消息$message.$studentInfoEN
,给您2个html
标记,2个body
等,这很可能会导致显示错误。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句