示例#1
0
 public function addFile(\Filehosting\File $file)
 {
     $sth = $this->dbh->prepare("INSERT INTO files(filename, size, upload_time, comment, token, original_name)\n         VALUES(:filename, :size, :upload_time, :comment, :token, :original_name)");
     $sth->bindValue(":filename", $file->getFileName());
     $sth->bindValue(":size", $file->getSize());
     $sth->bindValue(":upload_time", date("Y-m-d H:i:s", $file->getUploadTime()));
     $sth->bindValue(":comment", $file->getComment());
     $sth->bindValue(":token", $file->getToken());
     $sth->bindValue(":original_name", $file->getOriginalName());
     $sth->execute();
     $id = $this->dbh->lastInsertId();
     return $id;
 }
示例#2
0
 public function uploadFile(\Filehosting\File $file, $filePostData, $token)
 {
     $file->setOriginalFileName($filePostData['name']);
     $extension = pathinfo($filePostData['name'], PATHINFO_EXTENSION);
     $name = $filePostData['name'];
     if (!in_array($extension, $this->safeExtensions)) {
         $name = $filePostData['name'] . ".txt";
     }
     $file->setFileName($name);
     $file->setToken($token);
     $file->setUploadtime(time());
     $file->setSize($filePostData['size']);
     $file->setComment('');
     $this->filesMapper->beginTransaction();
     $file->setId($this->filesMapper->addFile($file));
     $tmpName = $filePostData['tmp_name'];
     echo $extension;
     if ($this->saveFile($tmpName, $file)) {
         $this->filesMapper->commit();
     } else {
         $this->filesMapper->rollBack();
         throw new Exception("Error occured during file uploading", 1);
     }
 }