如何避免生成的电子邮件附件的资源锁定/文件覆盖?

时间:2018-02-14 13:41:08

标签: php jquery ajax locking submission

非常标准的要求。我有一个表格,访问者输入联系信息以报告对产品的兴趣。但预算不允许数据库存储,登录,人工可读的格式。而是使用我生成的PDF通过电子邮件将表单数据发送给他们。

提交按钮进行AJAX调用,在回调时生成PDF和PDF的图像文件。

如果两个访问者同时提交表单,是否有办法对生成的文件进行编号或以其他方式避免文件覆盖或锁定?

电子邮件是与Wordpress的'wp_mail()一起发送的。从此函数返回后立即删除文件是否安全?

1 个答案:

答案 0 :(得分:0)

如果要生成唯一的文件名,可以使用guid而不是时间戳。

$filename = com_create_guid() . '.pdf';

或者如果你没有php> = 5

$data = openssl_random_pseudo_bytes(16);
$filename = '.pdf'; 
for ($x = 0; $x < 16; $x++)
   $filename = bin2hex($data[x]) . $filename;