如何在电子邮件中发送CSV文件的下载链接

时间:2015-02-05 07:57:19

标签: php email csv

我正在使用PHP脚本生成每周CSV文件,然后我需要通过电子邮件发送它的地址(基本上是生成它的目的地)以便下载它,所有这些都是使用CRON发生的任何人都可以告诉我该怎么做? (不是CRON部分,而是如何添加正确的下载链接)。例如:

var/www/Reports/weeklyReport/Weekly_Report_From_20-01-2015_to_27-01-2015.csv

但问题是目前我无法自动获取最新报告

CSV生成的代码:

$exportBaseDir = 'var/www/Reports';
$fileD = "Weekly_Report_From_".date('d-m-Y', strtotime('-1 week'))."_to_".date('d-m-Y').".csv";
$basePath = "$exportBaseDir/weeklyReport/$fileD";

$fp = fopen($basePath, 'w');

fputcsv($fp, $header, ',');
foreach ($tables as $fields) {
    fputcsv($fp, $fields,',');
} 

这发生在每周结束时,文件名是这样的:

Weekly_Report_From_20-01-2015_to_27-01-2015.csv
Weekly_Report_From_27-01-2015_to_06-02-2015.csv 
Weekly_Report_From_06-02-2015_to_13-02-2015.csv etc etc

电子邮件正文:

$mail->Subject = "Testing Weekly report with localhost";
$mail->Body = "Hi,<br /><br />This system is working perfectly <LINK>.";

我需要在电子邮件正文中放入正确的文件(最新版本),有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

我认为你上传csv文件时应该使用邮件功能,它会自动将正确的文件放入网址。

if(fputcsv($fp, $header, ',')){

$mail->Subject = "Testing Weekly report with localhost";
$mail->Body = "Hi,<br /><br />This system is working perfectly <a href=".$basePath.">file</a>.";

}