summaryrefslogtreecommitdiff
path: root/www/upload.php
diff options
context:
space:
mode:
authorHorus32014-03-18 00:14:37 +0100
committerHorus32014-03-18 00:14:37 +0100
commitfaa66b350b7c95701654cae59583761feaeeb3d3 (patch)
treedeb5b984698b3bfb72edfdf6a9f0f263e63d5cdd /www/upload.php
parent46786c1703474776d74ba67eb01eb484f3c8b646 (diff)
downloadfiles.iamfabulous.de-faa66b350b7c95701654cae59583761feaeeb3d3.tar.gz
func upload()
Diffstat (limited to 'www/upload.php')
-rwxr-xr-xwww/upload.php122
1 files changed, 0 insertions, 122 deletions
diff --git a/www/upload.php b/www/upload.php
deleted file mode 100755
index 4cc056c..0000000
--- a/www/upload.php
+++ /dev/null
@@ -1,122 +0,0 @@
-<?php
-
-session_start();
-
-$db = new SQLite3("../database/sqlite.db");
-
-function error($reason){
- echo "Failure! <br>";
- echo $reason;
- exit;
-}
-
-function database_upload($db, $parentdir, $owner, $filename, $folder, $mime, $size, $share, $filehash){
- if($db->exec("
- BEGIN TRANSACTION;
- INSERT INTO files (id, parent, owner, name, folder, mime, size, share, hash) VALUES (NULL, " . $parentdir . ", " . $owner . ", '" . $filename . "', '" . $folder . "', '" . $mime . "', '" . $size . "', '" . $share ."', '" . $filehash . "');
- COMMIT;
- ")){
- return true;
- } else {
- return false;
- }
-}
-
-function upload($db){
-
- if(!$_SESSION["login"]){
- error("Operation not permitted.");
- exit;
- }
-
- if($_FILES["userfile"]["error"] > 0 || !$_FILES['userfile']['size'] > 0 || empty($_FILES['userfile']['size'])){
- error("Error while proceding the upload: " . $_FILES['userfile']['error']);
- }
-
- $parentdir = SQLite3::escapeString("$_POST[pwd]");
- if(!preg_match("/[0-9]+/", $parentdir)){
- error("Invalid parent folder.");
- }
-
- $ownername = SQLite3::escapeString($_SESSION['username']);
- $owner_db = $db->query("SELECT id FROM user WHERE name='" . $ownername . "';");
- $owner_ar = $owner_db->fetchArray(SQLITE3_NUM);
- $owner = $owner_ar[0];
-
- $overall_size_db = $db->query("SELECT size FROM files WHERE owner=" . $owner . " AND size > 0;");
- $overall_size = 0;
- $count = 0;
- while($row = $overall_size_db->fetchArray(SQLITE3_NUM)){
- $overall_size = $overall_size + $row[$count];
- $count++;
- }
-
- if($overall_size > 2147483648){ // == 2GB
- error("Quota exceeded");
- }
-
- $filename = $_FILES['userfile']['name'];
- $folder = "FILE";
- $mime = $_FILES['userfile']['type'];
- $size = $_FILES['userfile']['size'];
- $share = SQLite3::escapeString($_POST['share']);
-
- $uploaddir = "../files/";
-
- //$filehash = hash_file("md5", $uploaddir . $filename);
- $filehash = hash_file("md5", $_FILES['userfile']['tmp_name']);
-
- $hashtest_db = $db->query("SELECT hash FROM files WHERE hash='" . $filehash ."';");
- $hashtest_ar = $hashtest_ar->fetchArray(SQLITE3_NUM);
- if(empty($hashtest_ar)){
-
- if(move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir . $_FILES['userfile']['name'])){
-
- if(database_upload($db, $parentdir, $owner, $filename, $folder, $mime, $size, $share, $filehash)){
- $gzfile = $uploaddir . $filehash . ".gz";
- $fp = gzopen($gzfile, 'w9');
-
- if(!gzwrite($fp, file_get_contents($uploaddir . $filename))){
- error("Something wrong writh the intern file handling.");
- }
-
- if(!gzclose($fp)){
- error("Something wrong writh the intern file handling.");
- }
-
- if(!unlink($uploaddir . $filename)){
- error("Something wrong writh the intern file handling.");
- }
-
- echo "Success!";
-
- } else {
- error("Database error.");
- }
-
- } else {
- error("Moving failed.");
- }
- } else {
- if(database_upload($db, $parentdir, $owner, $filename, $folder, $mime, $size, $share, $filehash)){
-
- if(!unlink($_FILES['userfile']['tmp_name'])){
- error("Something wrong writh the intern file handling.");
- }
- echo "Success!";
-
- } else {
- error("Database error.");
- }
- }
-}
-
-function web_upload($db){ // no use atm
- $url = ;
- if(preg_match("/^((https?|ftp)?://|www\.|ftp\.)?([-a-z0-9+&@#/%?=~_|!:,.;]+\.)+[a-z]{2}[a-z]*/i", $url)){
- echo "hyperlink detected";
- } else {
- echo "no hyperlink";
- }
-}
-upload($db);