e59-website/html/upload-file.php
Jan BELLON 4f71b03fb7 Update 2 files
- /html/upload.php
- /html/upload-file.php
2024-03-07 17:40:08 +00:00

95 lines
3.2 KiB
PHP

<?php
require "../include/variables.php";
require "../include/functions.php";
if(isset($_SESSION['userid']) == false) {
header("Location: login.php");
http_response_code(404);
die();
}
if(isset($_POST['titre']) && isset($_FILES['file'])) {
$filename = rand(100000, 999999);
$destination = "/var/www/e59/content/journal/" . $filename . ".md";
$bdd = connect($dbhost, $dbname, $dbuser, $dbpass);
if (!move_uploaded_file($_FILES['file']['tmp_name'], $destination)) {
$erreur = error_get_last();
die("Le fichier n'a pas pu être téléchargé. Erreur : " . $erreur['message']);
}
$upload = $bdd->prepare("INSERT INTO articles (ID, titre, date, auteur) VALUES (:filename, :titre, :date, :auteur)");
$upload->bindParam(':filename', $filename);
$upload->bindParam(':titre', htmlspecialchars($_POST['titre']));
$upload->bindParam(':auteur', $_SESSION['display_name']);
if (isset($_POST['date']) && empty($_POST['date']) == false) {
$upload->bindParam(':date', htmlspecialchars($_POST['date']));
} else {
$upload->bindParam(':date', date("Y-m-d"));
}
if($upload->execute()) {
$status = "Uploaded";
} else {
$status = "SQL Error";
}
}
?>
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="./src/css/style.css">
<link rel="icon" href="src/img/favicon.ico">
<titre><?=$titre?></titre>
</head>
<body>
<header>
<div class="pancontent">
<div class="athena-container">
<a href="/" class="athena-link">
<img src="./src/img/athena-mono.png" class="athena">
</a>
</div>
<div class="content">
<div>
<div class="main-titre">
<div class="titre"><?=$header_titre?></div>
<div class="subtitre"><?=$header_subtitre?></div>
</div>
</div>
</div>
</div>
</header>
<nav>
<div class="pancontent">
<?php nav($nav);?>
</div>
</nav>
<main>
<div class="content">
<div>
<div>
<h1>Publier un article</h1>
<form action="#" method="post" enctype="multipart/form-data">
<div>
<div><input type="text" name="titre" placeholder="Titre de l'article" required></div>
<div><input type="date" name="date"></div>
<!--<div><input type="radio">Interne</input></div>-->
<div><input type="file" name="file" required></div>
<div><input type="submit" value="Publier"></div>
<div><?=$status?></div>
</div>
</form>
</div>
</div>
</div>
</main>
<footer>
<div class="content">
<div>
<div><?=$copyright?></div>
</div>
</div>
</footer>
</body>
</html>