使用PHP Form Mail()函数获取文件内容

使用PHP Form Mail()函数获取文件内容,php,forms,email,Php,Forms,Email,我试图使用某种类型的邮件合并,其中PHP读取文本文件,但在该文本中,我试图“替换”一些关键字,这样,如果我添加“#FIRSNAME”、“#LASTNAME”、“#EMAIL”,就可以将其替换为邮件()表单上输入的字段函数…我的表单有10个相同的字段名,意思是:10个名字字段,10个姓氏,10封电子邮件。我使用“for”循环吐出10个相同的HTML输入(我这样做,而不是键入10个相同类型的HTML输入标记)。PHP通过验证处理此表单。使用mail()函数 当前在form和PHP在同一页面“myfo

我试图使用某种类型的邮件合并,其中PHP读取文本文件,但在该文本中,我试图“替换”一些关键字,这样,如果我添加“#FIRSNAME”、“#LASTNAME”、“#EMAIL”,就可以将其替换为邮件()表单上输入的字段函数…我的表单有10个相同的字段名,意思是:10个名字字段,10个姓氏,10封电子邮件。我使用“for”循环吐出10个相同的HTML输入(我这样做,而不是键入10个相同类型的HTML输入标记)。PHP通过验证处理此表单。使用mail()函数

当前在form和PHP在同一页面“myform.PHP”上处理的代码:


我想使用外部文本文件将这些关键字替换为$firstname和$lastname,以便使用mail()函数将其作为电子邮件发送。可以这样做吗?原因是此外部文本文件类似于“模板”“我想改变这一点。

实际上有一个简单的答案,不涉及数据库、类等

模板sometempalte.txt文件是使用file\u get\u contents读取的

<?php

//some form with validation

//send form via email
//In this somethingtemplate.txt has content as an email message
//"Hello #name#. You registered with email: #email#."
//using str_replace to replace these keywords
$body = file_get_contents("sometemplate.txt"); 
$body = str_replace("#name#",$_POST['name'],$body);
$body = str_replace("#email#",$_POST['email'],$body);
mail($_POST['email'], 'Subject', $body, 'From: email@email.com');

?>


是的,可以这样做。想象一下:你不是第一个问的人。所以,如果你想快速找到答案,最好搜索一下。不要使用平面文件,而要使用db@Dagon:幸运的是,文件系统是一个数据库。可能只是有点太迂腐了
You have requested this form... you're invited to our party..
Name: #FIRSTNAME# #LASTNAME#
Email: #EMAIl
<?php

//some form with validation

//send form via email
//In this somethingtemplate.txt has content as an email message
//"Hello #name#. You registered with email: #email#."
//using str_replace to replace these keywords
$body = file_get_contents("sometemplate.txt"); 
$body = str_replace("#name#",$_POST['name'],$body);
$body = str_replace("#email#",$_POST['email'],$body);
mail($_POST['email'], 'Subject', $body, 'From: email@email.com');

?>