From 2850bfb915fa5dc28d290910cba1c97b0c7e3b50 Mon Sep 17 00:00:00 2001 From: Russell McLoughlin Date: Wed, 1 Jun 2011 11:25:31 -0700 Subject: Modified upload code so that it uses php's built in file copy function rather than reading the entire uploaded file into memory from the temporary upload directory and then saving it to elgg's data dir. --- mod/file/actions/file/upload.php | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'mod/file/actions/file/upload.php') diff --git a/mod/file/actions/file/upload.php b/mod/file/actions/file/upload.php index e04203f67..fe93661f2 100644 --- a/mod/file/actions/file/upload.php +++ b/mod/file/actions/file/upload.php @@ -106,9 +106,7 @@ if (isset($_FILES['upload']['name']) && !empty($_FILES['upload']['name'])) { $file->originalfilename = $_FILES['upload']['name']; $file->simpletype = file_get_simple_type($_FILES['upload']['type']); - $file->open("write"); - $file->write(get_uploaded_file('upload')); - $file->close(); + move_uploaded_file($_FILES['upload']['tmp_name'], $file->getFilenameOnFilestore()); $guid = $file->save(); -- cgit v1.2.3 From 5ce0b61f361809949f88fcd6566eebc3abb2c8df Mon Sep 17 00:00:00 2001 From: Russell McLoughlin Date: Wed, 1 Jun 2011 13:16:39 -0700 Subject: Modified upload script to guarentee that the directory under elgg data is created or exists. Removed strange chunking code with builtin php function --- mod/file/actions/file/upload.php | 3 +++ mod/file/download.php | 9 ++++----- 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'mod/file/actions/file/upload.php') diff --git a/mod/file/actions/file/upload.php b/mod/file/actions/file/upload.php index fe93661f2..9581698be 100644 --- a/mod/file/actions/file/upload.php +++ b/mod/file/actions/file/upload.php @@ -106,6 +106,9 @@ if (isset($_FILES['upload']['name']) && !empty($_FILES['upload']['name'])) { $file->originalfilename = $_FILES['upload']['name']; $file->simpletype = file_get_simple_type($_FILES['upload']['type']); + // Open the file to guarentee the directory exists + $file->open("write"); + $file->close(); move_uploaded_file($_FILES['upload']['tmp_name'], $file->getFilenameOnFilestore()); $guid = $file->save(); diff --git a/mod/file/download.php b/mod/file/download.php index a386d490f..8e0287a1e 100644 --- a/mod/file/download.php +++ b/mod/file/download.php @@ -33,8 +33,7 @@ if (strpos($mime, "image/") !== false) { header("Content-Disposition: attachment; filename=\"$filename\""); } -$contents = $file->grabFile(); -$splitString = str_split($contents, 8192); -foreach ($splitString as $chunk) { - echo $chunk; -} +ob_clean(); +flush(); +readfile($file->getFilenameOnFilestore()); +exit; -- cgit v1.2.3 From d9485cb8e8982c668d7aa374f80ad2fa4c93753d Mon Sep 17 00:00:00 2001 From: Russell McLoughlin Date: Thu, 2 Jun 2011 15:54:16 -0700 Subject: fixed embarrassing spelling mistake. --- mod/file/actions/file/upload.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'mod/file/actions/file/upload.php') diff --git a/mod/file/actions/file/upload.php b/mod/file/actions/file/upload.php index 9581698be..518d59891 100644 --- a/mod/file/actions/file/upload.php +++ b/mod/file/actions/file/upload.php @@ -106,7 +106,7 @@ if (isset($_FILES['upload']['name']) && !empty($_FILES['upload']['name'])) { $file->originalfilename = $_FILES['upload']['name']; $file->simpletype = file_get_simple_type($_FILES['upload']['type']); - // Open the file to guarentee the directory exists + // Open the file to guarantee the directory exists $file->open("write"); $file->close(); move_uploaded_file($_FILES['upload']['tmp_name'], $file->getFilenameOnFilestore()); -- cgit v1.2.3