我收到错误“无法接收”当我在php中使用mail() [英] I get error "Failed to Receive" when i use mail() in php

查看:77
本文介绍了我收到错误“无法接收”当我在php中使用mail()的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

$strBody="<TABLE cellSpacing=0 cellPadding=0 align=center border=1><TR><TD align=left valign=top><font face='Verdana, Arial, Helvetica, sans-serif' color='#000000' size=2>Name</font></TD><TD colSpan=2><font face='Verdana, Arial, Helvetica, sans-serif' color='#000000' size='1'>".$_SESSION['fname']."   ".$_SESSION['lname']."</font></TD></TR>";
//$strBody="good".$strBody;
$strBody=$strBody."<TR><TD align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=2>Topic</FONT></TD>";
$strBody=$strBody."<TD colSpan=2 align=left valign=top><font face='Verdana, Arial, Helvetica, sans-serif' color='#000000' size='1'>".$_SESSION['topic']."</font></TD></TR>";
        $strBody=$strBody."<TR><TD align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=2>Detail of Topic</FONT></TD>";
        $strBody=$strBody."<TD colSpan=2 align=left valign=top><div align=justify><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=1>".$_SESSION['detail']."</FONT></div></TD></TR>";
        $strBody=$strBody."<TR><TD align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=2>Broad Category</FONT></TD>";
        $strBody=$strBody."<TD colSpan=2 align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=1>".$_SESSION['Head']."</FONT></TD></TR>";
        $strBody=$strBody."<TR><TD align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=2>Your Educational Level</FONT></TD>";
        $strBody=$strBody."<TD align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=1>".$_SESSION['reqfor']."</font></TD></TR>";
        $strBody=$strBody."<TR><TD align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=2>Desired Size</FONT></TD>";
        $strBody=$strBody."<TD align=left valign=top colSpan=2><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=1>".$_SESSION['dsize']." page(s), ".$_SESSION['nofwords']." Words.</font></TD></TR>";
        $strBody=$strBody."<TR><TD align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=2>Dead Line</FONT></TD>";
        $strBody=$strBody."<TD colSpan=2 align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=1>".$_SESSION['deadline']." (".$_SESSION['deadlinedate'].")</font></TD></TR>";
        $strBody=$strBody."<TR><TD align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=2>Type/Format</FONT></TD>";
        $strBody=$strBody."<TD colSpan=2 align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=1>".$_SESSION['typeformat']."</font></TD></TR>";
        $strBody=$strBody."<TR><TD align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=2>Style of Report / Style of Citation</FONT></TD>";
        $strBody=$strBody."<TD colSpan=2 align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=1>".$_SESSION['stylereport']."</font></TD></TR>";
        $strBody=$strBody."<TR><TD align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=2>Your Email</FONT></TD>";
        $strBody=$strBody."<TD colSpan=2 align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=2><a href='mailto:".$_SESSION['email']."'>".$_SESSION['email']."</a></TD></TR>";
        $strBody=$strBody."<TR><TD align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=2>Alternate Email</FONT></TD>";
        $strBody=$strBody."<TD colSpan=2 align=left valign=top><FONT face='Verdana, Arial, Helvetica, sans-serif' color=#000000 size=2><a href='mailto:".$_SESSION['aemail']."'>".$_SESSION['aemail']."</a></TD></TR>";
        $strBody=$strBody."<TR><TD colSpan=3></TD></TR></TABLE>";
        $strBody=$strBody."</TABLE></form>";

echo $strBody;
$to= $_SESSION['email'];
$from = "**********";
$subject = "Testing mail";
$message = "Hello! This is a simple email message.";
echo mail($to,$subject,$strBody,$from);

如果我使用$ strBody我得到错误...如果我使用$ message代码工作正常。我显示$ strBody,它显示正常,但当我尝试使用它在邮件()我收到错误。

if i use $strBody i get error...if i use $message the code works fine. I have display $strBody and it shows up fine but when i try to use it in mail() i am getting error.

任何人都可以帮助。

推荐答案

根据 PHP手册for mail(),消息中的行最多为70个字符。并用\\\
(LF)分隔。虽然我从来没有遇到由此引起的问题,可以试一试。

According to the PHP Manual for mail(), the lines in the message must be 70 chars long max. and should be separated with \n (LF). While I've never encountered a problem caused by this, you can give it a try.

哦,我一般在单个字符串中写下消息HTML,如: p>

Oh, I generally write down message HTML in a single string like:

$message = '
    <div>
        <span>...
        ...etc...
        ';

所以它会自动换行。您可以简单地修剪 $ strBody = $ strBody。零件,并将邮件连接成一个多行字符串。

So it's getting newlines automatically. You can simply trim $strBody=$strBody." parts and concatenate the message into a single multiline string.

如果您无法使其正常工作,您可以尝试像 Zend Mail

If you can't get it working, you can try ready-made classes like Zend Mail.

这篇关于我收到错误“无法接收”当我在php中使用mail()的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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