You can now upload thumbnails to you project

This commit is contained in:
neerholt 2021-03-09 10:41:39 +01:00
parent ea3bc7d104
commit 66eefe37a5
3 changed files with 23 additions and 10 deletions

1
.gitignore vendored
View File

@ -108,3 +108,4 @@ composer.phar
/vendor/ /vendor/
/Backend/Database/test.db /Backend/Database/test.db
/Backend/Games/ /Backend/Games/
/Frontend/images/

View File

@ -2,44 +2,53 @@
require_once "../../../bootstrap.php"; require_once "../../../bootstrap.php";
use Backend\Models\GameData; use Backend\Models\GameData;
if(isset($_POST['submitUpload'])){ if(isset($_POST['submitUpload'])){
//Get the data from the user form //Get the data from the user form
$gameFile = $_FILES['gameFile']; $gameFile = $_FILES['gameFile'];
$desc = $_POST['description']; $desc = $_POST['description'];
$title = $_POST['gameTitle']; $title = $_POST['gameTitle'];
$thumbnail = $_FILES['thumbnailFile'];
$isWebBased = isset( $_POST['isWebBased']); $isWebBased = isset( $_POST['isWebBased']);
//Handle data for game files //Handle data for game files
$gameFileName = $_FILES['gameFile']['name'];//Game name $gameFileName = $_FILES['gameFile']['name'];//Game name
$gameFileTmp = $_FILES['gameFile']['tmp_name'];//Tmp location of the file $gameFileTmp = $_FILES['gameFile']['tmp_name'];//Tmp location of the file
$gameFileType =$_FILES['gameFile']['type'];//File type
$gameFileError =$_FILES['gameFile']['error'];//File error $gameFileError =$_FILES['gameFile']['error'];//File error
$fileExtGame = explode('.', $gameFileName);
$fileActualExtGame = strtolower(end($fileExtGame));
$fileExt = explode('.', $gameFileName); //Handle data for thumbnail files
$fileActualExt = strtolower(end($fileExt)); $thumbnailFileName = $_FILES['thumbnailFile']['name'];//Game name
$thumbnailFileTmp = $_FILES['thumbnailFile']['tmp_name'];//Tmp location of the file
$thumbnailFileError =$_FILES['thumbnailFile']['error'];//File error
$fileExtThumb = explode('.', $thumbnailFileName);
$fileActualExtThumb = strtolower(end($fileExtThumb));
$allowedFileType = array('zip'); $allowedFileTypeGame = array('zip');
$allowedFileTypeThumbnail = array('gif', 'jpeg', 'png', 'svg');
if(in_array($fileActualExt,$allowedFileType)){ if(in_array($fileActualExtGame,$allowedFileTypeGame) || in_array($thumbnailFileName,$allowedFileTypeThumbnail)){
if($gameFileError === 0){ if($gameFileError === 0 || $thumbnailFileError === 0){
$gameFileNewName = uniqid("", true). "." . $fileActualExt; $gameFileNewName = uniqid("", true). "." . $fileActualExtGame;
$thumbnailFileNewName = uniqid("", true). "." . $fileActualExtThumb;
if(empty($gameFileName)){ if(empty($gameFileName)){
header("location: ../../../Frontend/index.php?error=emptyFile"); header("location: ../../../Frontend/index.php?error=emptyFile");
exit(); exit();
}else{ }else{
$gameData = new GameData(); $gameData = new GameData();
$gameData->game_name = $title; $gameData->game_name = $title;
$gameData->game_link = $gameFileNewName; $gameData->game_link = $gameFileNewName;
$gameData->description = $desc; $gameData->description = $desc;
$gameData->img = $thumbnailFileNewName;
$gameData->is_web_Based = $isWebBased; $gameData->is_web_Based = $isWebBased;
$gameData->save(); $gameData->save();
rename($gameFileTmp,"../../Games/".$gameFileNewName); rename($gameFileTmp,"../../Games/".$gameFileNewName);
rename($thumbnailFileTmp,"../../../Frontend/images/".$fileActualExtThumb);
} }
}else{ }else{
echo "Der var en fejl med at uploade din file"; echo "Der var en fejl med at uploade din file";

View File

@ -24,7 +24,10 @@
<input type="text" name="description" placeholder="Beskrivelse"><br><br> <input type="text" name="description" placeholder="Beskrivelse"><br><br>
<label for="uploadGame">Upload spil [.zip]</label> <label for="uploadGame">Upload spil [.zip]</label>
<input type="file" name="gameFile" placeholder="Upload dit spil"><br><br> <input type="file" name="gameFile" id="uploadGame" placeholder="Upload dit spil"><br><br>
<label for="uploadthumbnail">Upload thumbnail [GIF, JPEG, PNG, SVG]</label>
<input type="file" name="thumbnailFile" id="uploadthumbnail" placeholder="Upload en thumbnail"><br><br>
<label for="web">Er spillet web based</label> <label for="web">Er spillet web based</label>
<input type="checkbox" id="web" name="isWebBased" value="1"><br><br> <input type="checkbox" id="web" name="isWebBased" value="1"><br><br>