Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.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()添加额外字段_Php_Email_Contact - Fatal编程技术网

Php 向mail()添加额外字段

Php 向mail()添加额外字段,php,email,contact,Php,Email,Contact,我以前试过问这个问题,但我觉得我把事情弄得太复杂了,没有人回答。这是第二次。我需要在这行PHP中添加一个电话号码字段。我不知道如何添加它 mail( "contact@jeremyblaze.com", "Contact Form: ".$_POST['name'], $_POST['text'], "From:" . $_POST['email'] ); 我已经试过了,但是邮件从来没有通过 mail( "contact@jeremyblaze.com", "Contact Form: ".$

我以前试过问这个问题,但我觉得我把事情弄得太复杂了,没有人回答。这是第二次。我需要在这行PHP中添加一个电话号码字段。我不知道如何添加它

mail( "contact@jeremyblaze.com", "Contact Form: ".$_POST['name'], $_POST['text'], "From:" . $_POST['email'] );
我已经试过了,但是邮件从来没有通过

mail( "contact@jeremyblaze.com", "Contact Form: ".$_POST['name'], $_POST['phone'], $_POST['text'], "From:" . $_POST['email'] );
这是完整的PHP,如果你需要的话

<?php
if ( isset($_POST['phone']) && isset($_POST['email']) && isset($_POST['name']) && isset($_POST['text']) && filter_var($_POST['email'], FILTER_VALIDATE_EMAIL) ) {

    $test = "/(content-type|bcc:|cc:|to:)/i";
    foreach ( $_POST as $key => $val ) {
        if ( preg_match( $test, $val ) ) {
            exit;
        }
    }

    mail( "contact@jeremyblaze.com", "Contact Form: ".$_POST['name'], $_POST['text'], "From:" . $_POST['email'] );

}
?>


谢谢:)

您的代码应该是这样的 您的做法不正确。请添加适当的主题和消息。请研究此链接以了解更多信息


以下是php邮件功能页面:

您不能像那样在函数中添加电话号码

以下是基本功能:

mail(email,subject,body);
您需要在正文中添加电话号码:

$email = "contact@jeremyblaze.com";
$subject = "Contact Form: ".$_POST['name'];
$body = "From: ".$_POST['email']."\n\r\n\rPhone: ".$_POST['phone']."\n\r\n\r".$_POST['text'];

mail($email,$subject,$body);
您应该仔细查看php站点上的文档:


它将向您展示如何为“回复到”和“来自”等设置额外的标题。但我给您的应该是您想要做的。

为了补充@Mahmood Rehman info,如果您想发送HTML电子邮件,您可以这样做:

            // From
            $email_from = $vEmail;

            // To
            $to  = 'contact@jeremyblaze.com';

            // Subject
            $subject = $vSubject;

            // HTML Message
            $message = "<html>
            <head>
            <title>Title</title>
            </head>
            <p><b>$vName</b> send the follow message:</p>
            <p><b>Subject:</b> $vSubject</p>
            <p><b>Message:</b> $vMessage </p>
            <p><b>E-mail:</b> $vEmail </p>
            <p><b>Phone:</b> $vPhone </p> 
            </body>
            </html>";

            // To send HTML mail, the Content-type header must be set
            $headers  = "MIME-Version: 1.0\r\n";
            $headers .= "Content-type: text/html; charset=UTF-8\r\n";
            $headers .= "From: $email_from\r\n";

            // Mail it
            mail($to, "=?utf-8?B?".base64_encode($subject)."?=", $message, $headers);
//来自
$email_from=$vEmail;
//到
$to$contact@jeremyblaze.com';
//主题
$subject=$vSubject;
//HTML消息
$message=”
标题
$vName发送以下消息:

主题:$vSubject

消息:$vMessage

电子邮件:$vEmail

电话:$vPhone

"; //要发送HTML邮件,必须设置内容类型标题 $headers=“MIME版本:1.0\r\n”; $headers.=“内容类型:text/html;字符集=UTF-8\r\n”; $headers.=“发件人:$email\u发件人\r\n”; //邮寄 邮件(“=?utf-8?B?”。base64_编码($subject)。“?=”,$message,$headers);
我尝试用
$\u POST['text']
替换
$\u POST['phone']
,电话号码会自动出现在邮件正文中。@JonathonReinhart不,我没有。我不是PHP开发人员。你想把电话号码添加到什么?你还没有说明你真正想要完成什么。要用的电话号码在哪里?杰里米,我不知道乔纳森为什么这么讨厌:(-查看Pathfinder的答案。您的邮件命令格式不正确。@jonathon-如果我错误地理解了您的评论,很抱歉。很明显,OP通常不会用PHP编写代码,只是希望它像普通的联系人表单一样出现在邮件正文中,很可能按照p的建议分成另一行athfinder。这没有回答问题。(因为问题无效且无法回答。)@JonathonReinhart我认为问题是有效的,但他不知道如何正确编写邮件函数。我之所以说它无效,是因为他想
“在这行PHP中添加电话号码字段”
并且没有告诉我们电话号码应该做什么或者应该在哪里结束。同意这就是为什么我举了一个链接到邮件功能的例子,以供进一步研究。
            // From
            $email_from = $vEmail;

            // To
            $to  = 'contact@jeremyblaze.com';

            // Subject
            $subject = $vSubject;

            // HTML Message
            $message = "<html>
            <head>
            <title>Title</title>
            </head>
            <p><b>$vName</b> send the follow message:</p>
            <p><b>Subject:</b> $vSubject</p>
            <p><b>Message:</b> $vMessage </p>
            <p><b>E-mail:</b> $vEmail </p>
            <p><b>Phone:</b> $vPhone </p> 
            </body>
            </html>";

            // To send HTML mail, the Content-type header must be set
            $headers  = "MIME-Version: 1.0\r\n";
            $headers .= "Content-type: text/html; charset=UTF-8\r\n";
            $headers .= "From: $email_from\r\n";

            // Mail it
            mail($to, "=?utf-8?B?".base64_encode($subject)."?=", $message, $headers);