我使用以下代码发送网络邮件和短信通知。我想只接收客户的姓名及其在SMS中的查询,但由于查询字段不是强制性的,当用户将其留空时我会收到标题信息。我尝试从$header
删除mail(..,..,$header)
但我不会收到任何短信。
这是PHP代码:
if ($_POST['submit']) {
$to="myemailaddress@domain.com";
$sms="mymobilenumber@smsserviceprovider.com";
$subject="";
$from = "web@mywebsite.com";
$enquiry = $_REQUEST['enquiry'] ;
$headers = "From: $from\r\n" .
"MIME-Version: 1.0\r\n" .
"Content-Type: multipart/mixed;\r\n" .
" boundary=\"{$mime_boundary}\"";
$message="$name $enquiry";
@mail($sms, $message, $headers); }
HTML代码:
<form action="/thankyou.php" method="post" enctype="multipart/form-data" onsubmit="return validateForm();" >
<input type="text" name="name" />
<textarea name="enquiry"></textarea>
<input type="submit" value="submit" onclick="javascript:return validateMyForm();" />
</form>
当查询字段未得到答复时,这就是我得到的结果:
Sbj:姓名查询来自:web@mywebsite.com MIME-Versian:1.0内容类型:....
这是我想要收到的:
姓名查询
感谢您的帮助
解决:好的,我在这里解决了这个问题: 为SMS设置新标题如下:
$header = "From: $from\r\n" .
"Content-Type:text/plain;\r\n";
@mail($sms, $subject, $message, $header);
@mail($to, $subject, $message, $headers);