Jeff
Jeff

Reputation: 4003

password protect directory but still allow use on main page

I'm trying to move an image to a tmp directory on the server side and then send it to the client from the tmp folder, but things aren't quite working. Here's what I currently have.

//this is where the image resides permanently
$imgdirectory = "../" . $ms . "msimages/" . $img_filename;
//here I'm trying to get the contents of the img from its permanent location    
$content = file_get_contents($imgdirectory);
//here I'm trying to create a new temporary file
file_put_contents('/tmp/img.jpg', $content);

...

echo "img {background:url(\"/tmp/img.jpg\")-" . $xleft . "px -" . $ytop . "px";}"; this is the css trying to use file that is supposed to be in the temp folder

and here's the css output I get when the page loads

img#{width:631px;height:453px;background:url("/tmp/img.jpg")-144px -112px;}

But unfortunately, there is no file at /tmp/img.jpg so something must not quite be working with the file_put_contents 404 image not found

btw, I'm not getting any errors about permissions to put contents in /tmp,

Any advice is appreciated.

Upvotes: 2

Views: 79

Answers (1)

user1440875
user1440875

Reputation:

Use copy instead of reading and writing files

 bool copy ( string $source , string $dest [, resource $context ] )

And

file_put_contents('/tmp/img.jpg', $content);

will put it under root tmp directory not in your sites tmp directory.

Try

file_put_contents($_SERVER["DOCUMENT_ROOT"] . 'tmp/img.jpg', $content);

Upvotes: 2

Related Questions