I am trying to get a script to work that will protect individual files, 
not just a directory. The script I am using is this -

<?
if($auth == "yes")
{
 $file = "downloads/2004_February_PB_File1.pdf";
 $len = filesize($file);
 header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1
 header("Cache-Control: post-check=0, pre-check=0", false);
 header("Pragma: no-cache"); // HTTP/1.0
 header("Content-type: application/pdf");
 header("Content-Length: $len");
 header("Content-Disposition: inline; 
filename=2004_February_PB_File1.pdf");
 header("Content-Transfer-Encoding: binary\n");
 readfile($file);
}
else
{
 echo "Sorry, you must be logged in to access this page. <a 
href='index.php'>&lt;&lt;Back</a>";
// this is the end of the script, next lines added for testing purposes 
only
 echo "<br />File size: $len";
 echo "<br />File name: $file<br />";
 echo "File size using the filesize() function: " . 
filesize("downloads/2004_February_PB_File1.pdf");
 echo "<br />";
 echo "File type using the filetype() function: " . 
filetype("downloads/2004_February_PB_File1.pdf");
 echo "<br />";
 echo "File owner using the fileowner() function: " . 
fileowner("downloads/2004_February_PB_File1.pdf");
}
?>

The test lines above do show the expected results. The two echo statements 
that are supposed to show the variables $len and $file do not result in 
anything. The problem seems to be with the first line auth == 'yes'. If I 
change it to 'no' the script still gives the same results as when it is 
'yes'.

Here's what it's supposed to do - 
I have a directory of files that is protected by a .htaccess file. I have 
a password file outside the web root called passwd. The same passwd file 
is used for other directories for my use only and it works fine. The 
script is supposed to see the .htaccess file and pass the visitor through 
without them having to actually log in, and then the file will download 
automatically.

My purpose -
 is to prevent people from manipulating the url in the location bar and 
download documents directory without loggin into the site. The .htaccess 
works by itself, but I don't want to require the users to 'log in' a 
second time to download a file. They have to log into the site, they 
should be able to download the docs freely. 
I hope this is clear (clear as mud probably). Anyway, I found this script 
on http://www.wazzup.co.nz/tutorials/protect_pdf/index.php. I sent a 
message to the author and haven't heard back yet, so thought I'd try here.
If anyone knows of a better/easier/alternative way to protect individual 
files, give a logged in user free access to it, but protect it from 
downloads from people not logged in, I'm certainly open to any and all 
suggestion. The docs are price lists that we wouldn't want our competitors 
to get ahold of.

Thanks for the help,
--
Chip Wiegand
Computer Services
Simrad, Inc
www.simradusa.com
[EMAIL PROTECTED]

"There is no reason anyone would want a computer in their home."
     --Ken Olson, president, chairman and founder of Digital Equipment 
Corporation, 1977
 (Then why do I have 8? Somebody help me!)

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to