php邮件正在被切断 [英] php mail is getting cut off

查看:147
本文介绍了php邮件正在被切断的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在本地主机上通过php的邮件功能发送一个长的HTML电子邮件。它一直被切断,我无法弄清楚为什么。



以下是生成截止电子邮件的代码:

  $ message =< html>< body>; 
$ message。=< table rules = \all\style = \border-color:#666; \cellpadding = \10\>;
$ message。=< tr>< td colspan ='2'>应用程序< / td>< / tr>;
$ message。=< tr>< td colspan ='2'>& nbsp;< / td>< / tr>;
$ message。=< tr>< td colspan ='2'>个人信息< / td>< / tr>;
$ message。=< tr>< td> Name< / td>< td> {$ fullname}< / td>< / tr>
$ message。=< tr>< td>性别< / td>< td> {$ _ POST ['gender']}< / td>< / tr>
$ message。=< tr>< td>地址< / td>< td> {$ home_address}< / td>< / tr>
$ message。=< tr>< td>电话< / td>< td> {$ _ POST ['primary-phone']}< / td>< / tr>
$ message。=< tr>< td>电子邮件< / td>< td> {$ _ POST ['primary-email']}< / td>< / tr>
$ message。=< tr>< td colspan ='2'>< p>& nbsp;< / p>< / td>< / tr>
$ message。=< tr>< td colspan ='2'>学校信息< / td>< / tr>;
$ message。=< tr>< td>地址< / td>< td> {$ school_address}< / td>< / tr>
$ message。=< tr>< td>电话< / td>< td> {$ school_phone}< / td>< / tr>
$ message。=< tr>< td colspan ='2'>& nbsp;< / td>< / tr>;
$ message。=< tr>< td colspan ='2'>描述自己< / td>< / tr>;
$ message。=< tr>< td>婚姻状况< / td>< td> {$ _ POST ['marital-status']}< / td>< / tr>
$ message。=< tr>< td>配偶的姓名< / td>< td> {$ _ POST ['partner-name']}< / td>< / tr>
$ message。=< tr>< td>大学学位< / td>< td> {$ _ POST ['college-degree']}< / td>< / tr> ;
$ message。=< tr>< td>毕业年份< / td>< td> {$ _ POST ['grad-year']}< / td>< / tr>
$ message。=< tr>< td>大学名称< / td>< td> {$ _ POST ['college-name']}< / td>< / tr>
$ message。=< tr>< td> College Major< / td>< td> {$ _ POST ['major']}< / td>< / tr>
$ message。=< tr>< td colspan ='2'>& nbsp;< / td>< / tr>;
$ message。=< tr>< td colspan ='2'>就业信息< / td>< / tr>;
$ message。=< tr>< td>雇主名称< / td>< td> {$ _ POST ['current-employer']}< / td>< / tr>
$ message。=< tr>< td>使用日期< / td>< td> {$ _ POST ['date-employed']}< / td>< / tr>
$ message。=< tr>< td>雇主地址< / td>< td> {$ employer_address}< / td>< / tr>
$ message。=< tr>< td colspan ='2'>& nbsp;< / td>< / tr>;
//,并打开另外40行

这是结果电子邮件的代码:



< html>< body>< table rules =allstyle =border-color:#666; cellpadding =10>< tr>< td colspan ='2'>应用< / td>< / tr>< tr>< td colspan ='2'>& nbsp;< ; / td>< / tr>< tr>< td colspan ='2'>个人信息< / td>< / tr>< tr>< td>名称< / td>< td> ;布雷克< / TD>< / TR>< TR>< TD>性别和LT; / TD>< TD>雄< / TD>< / TR>< TR>< TD>地址< / TD> ;< td> My Street< br> Town,IN 12345< / td>< / tr>< tr>< td>电话< / td>< td> 555-555-5555< / td>< ; / tr>< tr>< td>电子邮件< / td>< td> my.email@gmail.com< td>< / tr>< tr>< td colspan ='2'> ;< p>& nbsp;< / p>< / td>< / tr>< tr>< td colspan ='2'>学校信息< / td>< / tr>< ;< / td>< / td>< / td>< TD> 555-555-5555< / TD>< / TR>< TR> ;< td colspan ='2'>& nbsp;< / td>< / tr>< tr>< td colspan ='2'>描述你自己< / td>< / tr> < tr>< td>婚姻状况< / td>< td>已婚< / td>< / tr>< tr>< td>配偶的姓名< / td>< td> Emily< / td> ;  / td>< / td> < td> 2008< / td>< / tr>< tr>< td>大学名称< / td>< td> Purdue< / td>< / tr> / p>

如您所见(或可能不依赖于格式),即使有更多信息,电子邮件也将在大学名称后被切断。



有什么问题?
$消息太大?
本地邮件服务器发送速度太快? (我正在使用与XAMPP一起安装的Mercury)



谢谢

解决方案

SMTP对线长度有限制,1024或2048列,我不确定。在你的身体里定期打上换行符( \r\\\
)。我建议在每个< / tr> 之后。这将对表格的呈现方式没有影响,但它应该阻止截断。


I am sending a long HTML email via php's mail function on my localhost. It is consistently getting cut off and I can't figure out why.

Here's the code producing the cut off email:

$message = "<html><body>";
$message .= "<table rules=\"all\" style=\"border-color: #666;\" cellpadding=\"10\">";
$message .= "<tr><td colspan='2'>Application</td></tr>";
$message .= "<tr><td colspan='2'>&nbsp;</td></tr>";
$message .= "<tr><td colspan='2'>Personal Information</td></tr>";
$message .= "<tr><td>Name</td><td>{$fullname}</td></tr>";
$message .= "<tr><td>Gender</td><td>{$_POST['gender']}</td></tr>";
$message .= "<tr><td>Address</td><td>{$home_address}</td></tr>";
$message .= "<tr><td>Phone</td><td>{$_POST['primary-phone']}</td></tr>";
$message .= "<tr><td>Email</td><td>{$_POST['primary-email']}</td></tr>";
$message .= "<tr><td colspan='2'><p>&nbsp;</p></td></tr>";
$message .= "<tr><td colspan='2'>School Info</td></tr>";
$message .= "<tr><td>Address</td><td>{$school_address}</td></tr>";
$message .= "<tr><td>Phone</td><td>{$school_phone}</td></tr>";
$message .= "<tr><td colspan='2'>&nbsp;</td></tr>";
$message .= "<tr><td colspan='2'>Describe Yourself</td></tr>";
$message .= "<tr><td>Marital Status</td><td>{$_POST['marital-status']}</td></tr>";
$message .= "<tr><td>Spouse's Name</td><td>{$_POST['partner-name']}</td></tr>";
$message .= "<tr><td>College Degree?</td><td>{$_POST['college-degree']}</td></tr>";
$message .= "<tr><td>Graduation Year</td><td>{$_POST['grad-year']}</td></tr>";
$message .= "<tr><td>College Name</td><td>{$_POST['college-name']}</td></tr>";
$message .= "<tr><td>College Major</td><td>{$_POST['major']}</td></tr>";
$message .= "<tr><td colspan='2'>&nbsp;</td></tr>";
$message .= "<tr><td colspan='2'>Employment Info</td></tr>";
$message .= "<tr><td>Employer Name</td><td>{$_POST['current-employer']}</td></tr>";
$message .= "<tr><td>Date Employed</td><td>{$_POST['date-employed']}</td></tr>";
$message .= "<tr><td>Employer Address</td><td>{$employer_address}</td></tr>";
$message .= "<tr><td colspan='2'>&nbsp;</td></tr>";
//and on and on for another 40 lines

And here's the resulting email's code:

<html><body><table rules="all" style="border-color: #666;" cellpadding="10"><tr><td colspan='2'>Application</td></tr><tr><td colspan='2'>&nbsp;</td></tr><tr><td colspan='2'>Personal Information</td></tr><tr><td>Name</td><td>Blake</td></tr><tr><td>Gender</td><td>male</td></tr><tr><td>Address</td><td>My Street<br>Town, IN 12345</td></tr><tr><td>Phone</td><td>555-555-5555</td></tr><tr><td>Email</td><td>my.email@gmail.com</td></tr><tr><td colspan='2'><p>&nbsp;</p></td></tr><tr><td colspan='2'>School Info</td></tr><tr><td>Address</td><td>my street<br>my town, IN 12345</td></tr><tr><td>Phone</td><td>555-555-5555</td></tr><tr><td colspan='2'>&nbsp;</td></tr><tr><td colspan='2'>Describe Yourself</td></tr><tr><td>Marital Status</td><td>married</td></tr><tr><td>Spouse's Name</td><td>Emily</td></tr><tr><td>College Degree?</td><td>yes</td></tr><tr><td>Graduation Year</td><td>2008</td></tr><tr><td>College Name</td><td>Purdue</td></tr>

As you can see (or maybe not depending on the formatting) the email is cut off after the college name even though there is plenty more information.

What's the problem? $message too large? local mail server sends too quickly? (I'm using Mercury that came installed with XAMPP)

Thanks

解决方案

SMTP has a restriction on the length of lines, either 1024 or 2048 columns, I'm not sure. Put newlines (\r\n) periodically in your body. I suggest after each </tr>. This will have no effect on the way the table is rendered, but it should prevent the truncation.

这篇关于php邮件正在被切断的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆