Pushing file name to browser
Hakan Nilsson
hakan at netg.se
Sat Mar 6 22:48:47 EST 2004
On Sat, 6 Mar 2004, pxlpluker wrote:
> I what to dynamically create a page that has download links to file
> stored on disk.
>
> the part i don't know how to do (or if its possible) is to a different
> name appear in the browser DL window.
>
> i.e. I want the files stored with a random string but when being DL to
> have real name show in File Save dialog.
>
> in essence i want to push the file name to the browser
>
> Fred
This is not so much a python issue as it is an issue of knowing what the
browsers do when they get special input.
But, since I recently did this myself I have the answer handy. ;o)
Most browsers check the name between the last / and the end of the line
(or "?" if you have extra get-parameters) and put that as default name in
the file save-dialog. So all you need to do is something like the following:
info = { "filename": "apa.txt", "fileid": "10001" }
the_url = '<a href="download.py/%(filename)s?id=%(fileid)s">%(filename)s</a>'%info
As far as I can tell you are only interested in the file id, then this
should work with no problem for you and you can get the id-parameter
through the standard cgi-object, or however you chose to do.
The filename (essentially anything you chose to put between the / and the ?)
will be available through an extra-path-info variable, probably also
available in the standard cgi-object.
Hope this helps,
/Hakan
-
Hi! I'm a .signature virus!
Copy me into your .signature file to help me spread!
More information about the Python-list
mailing list