Jump to content

Archived

This topic is now archived and is closed to further replies.

habeebnet

Set a variable when download start

Recommended Posts

Here's my file download script....
[code]
set_time_limit(0);
$speed = 10;

header("Cache-control: private");
header('Content-Description: File Transfer');
header('Content-Type: application/force-download');
header('Content-Length: ' . filesize($fileLocation . $fileName));
header('Content-Disposition: attachment; filename=' . $fileName);

if (!$file = fopen($fileLocation . $fileName, 'r')) {
      exit();
}

while (!feof($file)) {
      echo fread($file, $speed * 1024 * 8);
      flush();
      sleep(1);
}[/code]

when this script runs, a file dialogue box will appear with a 'save' and 'cancel' button.. I'm looking for a way to set a variable (say $status=TRUE) TRUE when somebody clicks on save button. And  when downlaods completes, the variable should set to FALSE.

I trying to implement this for the last two days... but always the variable will set to to TRUE before i click 'Save'..

Can anybody help me?

Many Thanks
-Hab-

Share this post


Link to post
Share on other sites
[quote author=habeebnet link=topic=104771.msg418073#msg418073 date=1155918407]
I'm looking for a way to set a variable (say $status=TRUE) TRUE when somebody clicks on save button.
[/quote]

Javascript is your friend. ;-)

Share this post


Link to post
Share on other sites
A javascript variable and a php variable arent accessible to each other though... From what I understand youre tryin to do, Im not sure if its impossible or not but ive never seen it happen...

Share this post


Link to post
Share on other sites
I agree. I have not seen this. I wish this were possible. I am interested in doing this my self.

Share this post


Link to post
Share on other sites
Hmm now that i think about it... It probably is impossible... Since a webserver has no way of knowing if your web client is downloading anything... Hmm but wait... maybe it does know since its a constant connection...  Seems like it would almost take a packet sniffer lol... As far as I know its not a php function or anything... But I'm sure its possible...

Share this post


Link to post
Share on other sites
while you can't possibly set a variabe within the same script from javascript, you can, however, use AJAX or set a cookie with javascript. but i haven't seen any javacript code to listen to file download dialogs, and if you output the javascript in this same script, it will be treated as the text content of the file... maybe use frames.

as far as i know, jsp might be able to sniff packets :)

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.