简体   繁体   中英

Save Uploaded Text File to Web Server

I have my users uploading a text file which then gets processed by my application. Once the processing is done, I would like to save a copy of this text file somewhere on my server for future reference. Currently, the uploaded text file stays in the PHP temp folder until it is closed by my app.

What's a simple way to accomplish this?

BTW, I'll need to know how to do this on my web server along with localhost (for testing).

You can use the fwrite function (this is probably not a very good idea in this particular example though.

$fp = fopen('data.txt', 'w');
fwrite($fp, $yourContents);
fclose($fp);

But, if you already have the file simply copy it using the copy command (if you want to keep it in the temp folder that is, if not move it with the rename function instead).

To copy , do something like this

$tempfile = 'tempfile.txt';
$newfile = 'newfile.txt';

if (copy($tempfile, $newfile)) {
    echo "success!";
} else {
    echo "misery :(";
}

To move with rename

// Rename returns a bool, just as in the copy example
rename("/tmp/tempfile.txt", "/home/user/files/newfile.txt");

Added this: To move with move_uploaded_file

Please note, I didn't test this in a development environment. This may not execute perfectly.

$uploads_dir = 'C:\\movefiles\\here\\';
foreach ($_FILES["upload-tracking-file"]["error"] as $key => $error) {
    if ($error == UPLOAD_ERR_OK) {
        $tmp_name = $_FILES["upload-tracking-file"]["tmp_name"][$key];
        $name = $_FILES["upload-tracking-file"]["name"][$key];
        move_uploaded_file($tmp_name, "$uploads_dir\\$name");
    }
}

References

use php's function ob_start(), and file_put_contents() this should help you. this links will help you if not post your reply php.net/manual/en/function.ob-start.php, php.net/manual/en/function.file-put-contents.php

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM