我有一个网站,可以根据用户插入的详细信息构建简单的Word文件。 我需要创建Word文件并将其发送到电子邮件。 我知道如何使用电子邮件发送文件。 我知道如何使用php创建Word文件:
<?php
header("Content-type: application/vnd.ms-word");
header("Content-Disposition: attachment;Filename=document_name.doc");
echo "<html>";
echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=Windows-1252\">";
echo "<body>";
echo "<b>My first document</b>";
echo "</body>";
echo "</html>";
?>
例如,我接受同一用户的名字,只使用此名称创建Word文件,然后将该文件发送给emai。
但在我使用此代码之后,它只是上传文件。如何将此信息发送至电子邮件?
答案 0 :(得分:0)
您是说您不知道如何将生成的Word文档放入物理文件中?然后,您可以使用已有的电子邮件代码?
如果上面的代码是生成Word文档的示例,那么您可以执行以下操作。
<?PHP
// Get the generated MS Word document data
$ms_word_data = file_get_contents("http://url.to.ms.word.create.file.php");
// Create a temporary file to use as email attachment
$word_temp_file = tmpfile();
// Write your generated MS Word data into the temporary file
fwrite($word_temp_file, $ms_word_data);
// Use the file in your E-Mail code
...
$attachment_file = $word_temp_file;
...
// When you have sent your E-Mail don't forget to do house keeping.
// This will close your filepointer but also delete the temporary
// file your have created.
fclose($word_temp_file);
?>
答案 1 :(得分:-1)
这可以通过PHPMailer实现,设置然后添加它以将特定的word文件附加到您的电子邮件中 您可以从[here] [1]
获取PHPMailer$email = new PHPMailer();
$email->From = 'youremail@xyz.com';
$email->FromName = 'Name';
$email->Subject = 'Sub';
$email->Body = $body;
$email->AddAddress( 'recievers@email.com' );
$file_to_attach = 'PATH_OF_YOUR_FILE_HERE';
$email->AddAttachment( $file_to_attach , 'wordfile.txt' );
最后
return $email->Send();
这样您就可以将文件附加到电子邮件中。