aboutsummaryrefslogtreecommitdiffstats
path: root/php
diff options
context:
space:
mode:
authoradam <adam@>2021-02-12 12:38:09 +0200
committeradam <adam@>2021-02-12 12:38:09 +0200
commited66392fc694ffb10b59a22b9305c7334d13a67f (patch)
tree61ae21764fae86c28ac6f3a172df6904c6fce0ae /php
parent9102b9017d978be8c119a3ac8e79c661f2dad6b1 (diff)
downloadfileup-ed66392fc694ffb10b59a22b9305c7334d13a67f.tar.gz
upload prototype. needs to be checked
Diffstat (limited to 'php')
-rw-r--r--php/.database.php.swpbin16384 -> 16384 bytes
-rw-r--r--php/.upload.php.swpbin0 -> 12288 bytes
-rw-r--r--php/database.php21
-rw-r--r--php/upload.php23
4 files changed, 32 insertions, 12 deletions
diff --git a/php/.database.php.swp b/php/.database.php.swp
index 5193729..eecacf9 100644
--- a/php/.database.php.swp
+++ b/php/.database.php.swp
Binary files differ
diff --git a/php/.upload.php.swp b/php/.upload.php.swp
new file mode 100644
index 0000000..e1fc62b
--- /dev/null
+++ b/php/.upload.php.swp
Binary files differ
diff --git a/php/database.php b/php/database.php
index a46bdd2..cfef823 100644
--- a/php/database.php
+++ b/php/database.php
@@ -164,6 +164,27 @@ require_once "node.php";
//print count($id);
return $id[0];
}
+ /*returns the file name as it must be in the filesystem*/
+ function create_file_node(string $filename): string
+ {
+ global $storage_root;
+ $code=get_random_node_name("");
+ if($filename==NULL)return false;
+ $prep=$this->pdo->prepare("insert into nodes(is_directory,relative_path,name,code)
+ values(false,:root,:name,:code)
+ ");
+ $prep->bindParam(':name',$filename);
+ $prep->bindParam(':root',$storage_root);
+
+ $prep->bindParam(':code',$code);
+ if($prep->execute()==false)
+ {
+ error_log("could not upload file");
+ /*not so quiet error*/
+ return "error";
+ }
+ return code;
+ }
function are_linked(int $directory_id,int $node_id): bool
{
$prepare=$this->pdo->prepare("select node_id
diff --git a/php/upload.php b/php/upload.php
index d9110c7..bd72b6b 100644
--- a/php/upload.php
+++ b/php/upload.php
@@ -1,22 +1,21 @@
<?php
+require_once "database.php"
+require_once "configuration.php"
-if (!array_key_exists('uf', $_FILES)) {
+if (!isset( $_POST["filename") || !isset($_POST["the_file"])
+{
http_response_code(400);
- exit();
+ error_log("someone tried to upload something impropperly");
+ exit(1);
}
-$file = $_FILES['uf'];
+$file = $_POST["the_file"];
+$filename= $_POST["filename"];
-if (file['error'] != 0) {
- http_response_code(400);
- exit();
-}
-
-$m = md5_file($file['tmp_name']);
-
-copy($file['tmp_name'], "screen/$m.png");
+$codename=create_file_node($filename);
-echo "http://india.fmi.fail/screen/$m.png";
+copy($file['tmp_name'], "$storage_root/$codename");
+echo $codename;
?>