I'm trying to make a simple script that does two things:
- Serves up a file and hide's it's destination
- Has a download counter
Now, I'm doing this in the wordpress environment, but this question isn't completely wordpress-related so I figured I would ask here.
Basically, the way I have it set up, currently, is I have a link that when you click it sets a $_['GET']
which is then checked if is set. If it is set, the download file is served.
the link: <a href="http://localhost:8888/fresh/?dl_id=01">Click here!</a>
'
the $_['GET']
code: http://pastebin.com/93nD43gA
There is a bit of wordpress jargon in the code, but basically it's checking a download count user_meta and if it's > 0, serveFile()
is called.
The main problem I'm having here is, if I click the link, readfile()
loads the actual file contents INTO the window (garbled text). If I add a target=_blank
to the <a>
it opens a new browser window and loads the contents INTO the window.
This approach seemed to work perfectly fine when I was doing it as stand-alone php files. My main issue is that I need to keep the wordpress space so I can call functions, etc. associated with it.
I have tried using the $_['GET']
on both the self page, another page with a custom template (the code in the pastebin above), and as a stand-alone php file. Both the first two options load the file INTO the window. The third doesn't preserve wordpress functions, even if I include blog-header.php
.
Can anyone point me in to the right direction of how to get the file to force download and not load INTO the window?