95 lines
3.2 KiB
PHP
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>
|