Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.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邮件函数内容布局_Php_Html_Database_Forms_Hidden - Fatal编程技术网

php邮件函数内容布局

php邮件函数内容布局,php,html,database,forms,hidden,Php,Html,Database,Forms,Hidden,从html表单中,文本存储在数据库中。 使用以下代码,我尝试将该文本发送到收件人: $recipient = $emailadres; $subject = 'xxxx'; $header = 'From: xxxx <xxx@xxxxxxxxx.nl>'; if ($aanhef == 'Dhr.') { $geslacht = 'heer'; } elseif ($aanhef == 'Mevr.') { $

从html表单中,文本存储在数据库中。 使用以下代码,我尝试将该文本发送到收件人:

$recipient = $emailadres;
    $subject = 'xxxx';
    $header = 'From: xxxx <xxx@xxxxxxxxx.nl>';
    if ($aanhef == 'Dhr.') {
        $geslacht = 'heer';
    }
    elseif ($aanhef == 'Mevr.') {
        $geslacht = 'mevrouw';
    }
    else {
        $geslacht = 'heer/mevrouw';
    }
    $mail_body = $bevestiging;
    $mail_body = str_replace('#geslacht#', $geslacht, $mail_body);
    $mail_body = str_replace('#achternaam#', $achternaam, $mail_body);
    mail($recipient, $subject, $mail_body, $header);
$recipient=$emailadres;
$subject='xxxx';
$header='From:xxxx';
如果($aanhef=='Dhr'){
$geslacht='heer';
}
elseif($aanhef=='Mevr'){
$geslacht='mevrouw';
}
否则{
$geslacht='heer/mevrouw';
}
$mail_body=$bevestiging;
$mail_body=str_replace('geslacht#',$geslacht,$mail_body);
$mail_body=str_replace('achternaam#',$achternaam,$mail_body);
邮件($recipient,$subject,$mail\u body,$header);

在变量mail_body中存储邮件内容,然后替换内容中的性别和姓氏。这段php代码可以正常工作。但是,如果我们查看收到的邮件,HTML表单中填写的所有条目都变成了两个条目,换句话说,电子邮件的整个布局已经改变,当我查看数据库时,文本以正常布局存在,没有双条目等。但是如果我在数据库中手动输入文本,它就会正常工作。数据库中是否可能存储了隐藏的html布局?或者是其他原因

将$header变量更改为:

$header ="Content-type: text/html; FROM: xxxx <xxx@xxxxxxxxx.nl>";
$header=“内容类型:text/html;FROM:xxxx”;

发送的电子邮件将显示为HTML。

将$header变量更改为:

$header ="Content-type: text/html; FROM: xxxx <xxx@xxxxxxxxx.nl>";
$header=“内容类型:text/html;FROM:xxxx”;

发送的电子邮件将显示为HTML。

检查str\u replace之前和之后的电子邮件正文值/输出…str\u replace之前和之后布局已经错误检查str\u replace之前和之后的电子邮件正文值/输出…str replace之前布局已经错误工作,现在唯一的问题是,电子邮件似乎来自我邮箱中的web主机,因此直接被垃圾邮件过滤器捕获!我错过了内容类型后面的“\r\n”$header=“内容类型:text/html\r\n来自:xxxx”;这应该可以奏效内容现在很好,我可以在任何我喜欢的地方添加html标记,但我的hotmail说它是通过atlantis@webhost.nl不是由xxxxxx@xxxxxxx.nlCan在此处粘贴设置$header变量的行?$header='Content type:text/html\r\n From:xxxxxxx';它成功了,现在唯一的问题是,电子邮件似乎来自我邮箱中的web主机,所以直接被垃圾邮件过滤器捕获!我错过了内容类型后面的“\r\n”$header=“内容类型:text/html\r\n来自:xxxx”;这应该可以奏效内容现在很好,我可以在任何我喜欢的地方添加html标记,但我的hotmail说它是通过atlantis@webhost.nl不是由xxxxxx@xxxxxxx.nlCan在此处粘贴设置$header变量的行?$header='Content type:text/html\r\n From:xxxxxxx';