Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP mail()函数不适用于office电子邮件_Php_Email - Fatal编程技术网

PHP mail()函数不适用于office电子邮件

PHP mail()函数不适用于office电子邮件,php,email,Php,Email,所以我尝试使用PHP的mail()函数在用户注册时发送电子邮件。 但出于某种原因,它拒绝向公司发送电子邮件。是否有一些额外的参数,我可能会错过,我需要这样的东西,或者你认为这是从公司的电子邮件过滤这些电子邮件 编辑: 下面是一些代码: $to = 'something@something.com'; $subject = 'New Web Registration'; $from = 'Quote Registration'; $headers = 'Content-type: text/ht

所以我尝试使用PHP的mail()函数在用户注册时发送电子邮件。 但出于某种原因,它拒绝向公司发送电子邮件。是否有一些额外的参数,我可能会错过,我需要这样的东西,或者你认为这是从公司的电子邮件过滤这些电子邮件

编辑: 下面是一些代码:

$to = 'something@something.com';
$subject = 'New Web Registration';
$from = 'Quote Registration';

$headers = 'Content-type: text/html charset=iso-8859-1\r\n';
$headers .= 'From: ' . $from;

$body = '<table>
        <tr>
            <td style="text-align: right;">WebUserID:</td>
            <td>' . $wuid . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Name: </td>
            <td>' . $regdata['Name'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Company:</td>
            <td>' . $regdata['Company'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Address:</td>
            <td>' . $regdata['Address'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">CSZ:</td>
            <td>' . $regdata['City'] . ', ' . $regdata['State'] . ' ' . $regdata['Zip'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Phone:</td>
            <td>' . $regdata['Phone'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Fax:</td>
            <td>' . $regdata['Fax'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">URL:</td>
            <td>' . $regdata['URL'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Email:</td>
            <td>' . $email . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Comments:</td>
            <td>' . $regdata['Comments'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Customer Group:</td>
            <td>' . $regdata['CustomerGroup'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">How Heard</td>
            <td>' . $regdata['HowHeard'] . '</td>
        </tr>
        </table>';

if (!mail($to, $subject, $body, $headers)) {
    echo 'Message delivery failed.'; 
}
$to='1!'something@something.com';
$subject='新网站注册';
$from=‘报价注册’;
$headers='内容类型:text/html字符集=iso-8859-1\r\n';
$headers.='From:'$从…起
$body=
WebUserID:
' . $威德。”
姓名:
' . $regdata['Name'].'
公司:
' . $regdata[“公司”]。'
地址:
' . $regdata['Address'].'
CSZ:
' . $regdata['City'].','$regdata['State'].'$regdata['Zip'].'
电话:
' . $regdata['Phone'].'
传真:
' . $regdata['Fax'].'
网址:
' . $regdata['URL'].'
电邮:
' . $电子邮件。”
评论:
' . $regdata['Comments'].'
客户群:
' . $regdata['CustomerGroup'].'
怎么听到的
' . $regdata['HowHeard'].'
';
如果(!邮件($to、$subject、$body、$headers)){
回显“消息传递失败”;
}

而且它还成功地将电子邮件发送到其他领域,如gmail。投递/过滤问题?

我向您提供我的邮件发送代码。它在我的应用程序中运行良好。希望它能帮助你

function sendmail($username)
{
    $from     =       "test@test.com";
    $to       =       "mytest@test.com";
    $subject  =       "My Test Subject";
    $body     =       "My Test Body";
    $headers .=      "From:".$from ."". "\r\n";

    if (mail($to ,$subject ,$body,$headers)) 
    {
        $msg = "Your message has been sent.";
    } 
    else
    {
        $msg = "Error in Sending the Message. Please try again.";
    }
    return $msg;
}

如果它成功发送到其他域,则表明您公司的邮件服务器存在问题。这些电子邮件可能被过滤为垃圾邮件或类似的东西

一个简单的解决方案是使用STMP,或者您可以通过查看邮件服务器的日志来尝试找出为什么要过滤邮件


如果以html格式发送,请确保发送整个html消息。(标记和全部)。

它是否成功地将电子邮件发送到其他域?很可能是传递/筛选问题,而不是您的代码,但如果没有我们无法识别的代码。你检查过你的错误日志了吗?你有错误吗?或者如果收件人只是没有收到电子邮件?邮件服务器日志是查找调试此类问题的第一个位置。$body应该是有效的html页面,而不仅仅是其中的一部分。此函数似乎不会返回任何内容。请添加return关键字而不是$msg该函数还有一个无用的参数和硬编码字段。这几乎是一个无用的函数。