我有一个报告数据库,其中可能的附件直接嵌入到页面中作为Base64字符串。 <a>
标记使用提供文件名的下载属性。
必须下载浏览器可以原生呈现的附件类型(例如图像,音频文件,文本文件等),这有点烦人。
是否可以使用类似<a filename=$ATTFILENAME data=...>
的内容,以便用户右键单击链接进行下载,文件名已经填充?
(当使用<a download=$ATTFILENAME data=...>
并单击链接时,文件名与(PHP)变量$ATTFILENAME
匹配。没有下载属性,文件名为&#34; download&#34; )。
答案 0 :(得分:2)
修复很简单。
如果你使用内联php进行模板化,那么一个简单的<a download="<?php echo $ATTFILENAME ?>" href="Base64EncodedData">
应该解决它。
如果您正在使用模板系统(Smarty,twig,Blade,...),请参阅它有关如何输出字符串的文档。
这些当然假设您有一个$ATTFILENAME
变量,其中包含原始文件名。如果您还没有在上传时存储它,那么(据我所知),无法恢复原始文件名。