This website is for questions on Perl. This question has absolutely nothing to do with Perl. You've been here a while, so you should probably know better.
You cannot force a download with straight HTML. Even if you use the link you've shown above, it cannot guarantee it will download the file. For example, the way my Firefox is configured, your link will open your .pdf in a new tab and not try to save it.
You can use JavaScript to do what you want. For an example, check out the script they use on SourceForge, which I've linked here. | [reply] |
There is no way to force a download in HTML, because it is not the job of HTML.
Javascript can not change the browser behavior in that way, and even if it could, not all browsers implement or allow Javascript. At best, it would not work reliably, perhaps it won't work at all. Again, it is not the job of Javascript.
HTTP headers can strongly suggest (note: not force) that a resource is saved as a file instead of being displayed:
Search for how to add a Content-Disposition HTTP header to the PDF resource. Typically, you need to change the web server configuration for that, or deliver the resource through a server-side program that adds that header for you. This is how HTTP works.
A different way would be to use an intentionally broken MIME type to persuade the browser to save the file, like "application/x-save-this-file". But then, the browser may decide that the resource is not a PDF at all, but something completely different, and tell the operating system about that, e.g. by adding a ".bin" extension or by storing the MIME type with the file. It may even decide that the resource is something dangerous and refuse to store or display it. So, don't go this way, use the Content-Disposition header.
Alexander
--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)
| [reply] [d/l] |