Page 1 of 1

How to copy a file sent with $GLOBALS["HTTP_RAW_POST_DATA"]

Posted: Sat Mar 22, 2008 7:53 pm
by deezerd
Hi

here is the thing: I have a flash application that creates a jpeg file and then call a php file to send the jpeg to the client with a classic browser download window

The jpeg file is sent on the fly with the variable $GLOBALS["HTTP_RAW_POST_DATA"]
I would like to copy this file in a directory before it is sent to the web browser with the header() function but I have no idea of how to do this

I tried it doing something like copy('myphpfile.php','foo.jpg') but I get this warning error:

Code: Select all

Warning: copy(jpg_encoder_download.php?name=sketch.jpg) [function.copy]: failed to open stream
Here is the content of the php file called by the flash application: how can I copy the content of $GLOBALS["HTTP_RAW_POST_DATA"] on my server before to send it on the fly?

Code: Select all

<?php
 
 
if ( isset ( $GLOBALS["HTTP_RAW_POST_DATA"] )) {
    
    $im = $GLOBALS["HTTP_RAW_POST_DATA"];
    
    header('Content-Type: image/jpeg');
    header("Content-Disposition: attachment; filename=".$_GET['name']);
    echo $im;
    
}  else echo 'An error occured.';
 
?>
many thanks for your help

Re: How to copy a file sent with $GLOBALS["HTTP_RAW_POST_DATA"]

Posted: Sat Mar 22, 2008 8:53 pm
by Weirdan

Code: Select all

file_put_contents('filename.ext', $GLOBALS["HTTP_RAW_POST_DATA"]);

Re: How to copy a file sent with $GLOBALS["HTTP_RAW_POST_DATA"]

Posted: Sat Mar 22, 2008 9:03 pm
by deezerd
Weirdan wrote:

Code: Select all

file_put_contents('filename.ext', $GLOBALS["HTTP_RAW_POST_DATA"]);
it works, thanks :)