0

这个想法是用户可以在屏幕上排列 div 块(拖放)。当用户认为职位不错时,他们可以通过电子邮件将职位及其姓名和电子邮件发送给我。

<form action="#">       
<input name="name" id="name">        
<input name="email" id="email">       
<input name="htmlcontent" id="htmlcontent">        
<p><button type="submit">Send to DKdL</button></p>
</form>

表格将由手工填写。除了将粘贴完整源代码的字段(通过 jquery - 也将在此处过滤)。这就是我以后会知道每个 div 块的位置的方式。这将通过 jquery post 发送。

$('form').on('submit', function(e) {

var html = $('html').html();
var htmlSending = '<html>' + html + '</html>';
var noScript = htmlSending.replace(/script/g, "h6");

//alert(noScript);
$('input#htmlcontent').val(noScript);

$.post('http://www.address/save.php', $(this).serialize(), function(data) {
    //callback to use for thank you message
    console.log(data);
});

e.preventDefault();
});

在 php 中,我希望将第三个字段(带有复制和过滤的 html 源代码)保存为 .html 文件,并在其后面加上名称和日期(例如:peter_01-09-2012.html)并包含在电子邮件中将发送给我的附件。

<?php

$name = name;
$email = email;
$htmlcontent = htmlcontent;
//file_put_contents('file.html', '$htmlcontent'); 

$to = '"My Email <my.email@mail.com>';
$headers = 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 

$message =
<p>Name: $name</p>
<p>E-Mail: $email</p>
here should be a url to the HTML Content: $htmlcontent
or a real email attachment
;   
?>

这有可能实现吗?不幸的是,我的知识在 php 中没有。我只知道可以写入文件。但是我如何告诉 php 将其作为附件包含在电子邮件中?如果我的问题有更好的选择,我当然也喜欢听。

4

1 回答 1

0

由于 PHPmail()实际上是发送原始电子邮件内容的简单“代理”,因此您有两种选择:

  1. 使用一些功能更强大的 PHP 包,允许您构造带有附件的邮件消息(例如 PEAR Mail_Mime)。

  2. 了解如何构建多部分邮件内容。由于在这种情况下它非常简单(并且仅涉及诸如Content-type,之类的术语Content-disposition),因此我会在这里推荐它。

最简单的就是通过例子来学习,所以请在您的电子邮件客户端中获取一些简单的邮件(带附件)并查看该邮件的来源。您甚至可以将此源用作发送到 PHPmail()函数的数据的模板。

于 2012-08-31T21:43:47.383 回答