Current directory: /home/klas4s23/domains/585455.klas4s23.mid-ica.nl/public_html/Gastenboek/uploads
<?php
session_start();
$questbook_file = 'gastenboek.json';
function loadQuestbook() {
global $questbook_file;
if (file_exists($questbook_file)) {
$questbook_data = file_get_contents($questbook_file);
return json_decode($questbook_data, true);
} else {
return [];
}
}
// Function to save questbook messages
function saveQuestbook($messages) {
global $questbook_file;
$json_data = json_encode($messages, JSON_PRETTY_PRINT);
file_put_contents($questbook_file, $json_data);
}
// Function to add a new message to the questbook
function addMessage($name, $message, $image) {
$questbook = loadQuestbook();
$newMessage = array(
'name' => $name,
'message' => $message,
'image' => $image,
'date' => date("d:m:Y H:i")
);
$questbook[] = $newMessage;
saveQuestbook($questbook);
}
// Handle form submission
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
if (isset($_SESSION['latest_message'])){
// latest_message houdt een timestamp vast
$datetimelatest_message = $_SESSION['latest_message'];
// we willen kijken of deze variabele time() x seconden groter is
if (time() >= ($datetimelatest_message + 86400)){
// nu mag je een bericht sturen
saveMessage();
}else {
// NU MAG JE GEEN BERICHT STUREN!!!
echo "je hebt vandaag al een bericht gepost!";
}
}
else {
$fileNameParts = explode('.', $_FILES['image']['name']);
$fileExtension = strtolower(end($fileNameParts));
$allowedExtensions = ['jpg', 'jpeg', 'png', 'gif'];
if (in_array($fileExtension, $allowedExtensions)) {
saveMessage();
} else {
echo "Invalid file extension!\n";
}
}
}
function saveMessage()
{
$name = $_POST['name'];
$message = $_POST['message'];
if($_FILES['image']['size'] > 0) {
$image = $_FILES['image'];
// Check if image was uploaded successfully
if ($image['error'] === UPLOAD_ERR_OK) {
$upload_dir = 'uploads/';
$upload_file = $upload_dir . basename($image['name']);
if (move_uploaded_file($image['tmp_name'], $upload_file)) {
addMessage($name, $message, $upload_file);
header("location: ./");
} else {
echo "Error uploading image.";
}
} else {
echo "Error uploading image.";
}
}
else {
addMessage($name, $message, '');
header("location: ./");
}
// na het versturen van een bericht, moeten wij de session key zetten
$_SESSION["latest_message"] = time();
}