diff options
| author | Hannah Isopod <me@bathynomus.xyz> | 2025-05-10 03:03:58 -0600 |
|---|---|---|
| committer | Hannah Isopod <me@bathynomus.xyz> | 2025-05-10 03:03:58 -0600 |
| commit | eb61c1bae2ffad114e17393d91d86fb00d7ac8cd (patch) | |
| tree | 4f997d73e0843dab760e5d988679a1a86b76f5da /blog/comment/submit.php | |
| parent | 4b9500ddeedbea21f80f41dfe4149cf3bf9be4c3 (diff) | |
Initialer commit
Just remade the repo because I don't *need* need a comprehensive source history for my personal website and this is easier than getting filter-repo to work good
Diffstat (limited to 'blog/comment/submit.php')
| -rw-r--r-- | blog/comment/submit.php | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/blog/comment/submit.php b/blog/comment/submit.php new file mode 100644 index 0000000..26e5647 --- /dev/null +++ b/blog/comment/submit.php @@ -0,0 +1,81 @@ +<?php + if ($_SERVER["REQUEST_METHOD"] == "POST") { + + $returnLocation = $_POST["entry"]; + $returnCode = "success"; + if($_POST["botcheck"] != "isopod") { + $returnCode = "botcheckfailed"; + } else if(!$_POST["name"]) { + $returnCode = "noname"; + } else if(!$_POST["message"]) { + $returnCode = "nomessage"; + } else { + + date_default_timezone_set("America/Edmonton"); + $currentPost = array( + "date" => time(), + "name" => htmlentities($_POST["name"]), + "message" => htmlentities($_POST["message"]), + "entry" => $_POST["entry"] + ); + + $filename = "posts.json"; + + $handle = @fopen($filename, 'r+'); + + // create the file if needed + if ($handle === null) + { + $handle = fopen($filename, 'w+'); + } + + if ($handle) + { + // seek to the end + fseek($handle, 0, SEEK_END); + + // are we at the end of is the file empty + if (ftell($handle) > 0) + { + // move back a byte + fseek($handle, -2, SEEK_END); + + // add the trailing comma + fwrite($handle, ",\n", 2); + + // add the new json string + fwrite($handle, json_encode($currentPost) . "]\n"); + } + else + { + // write the first event inside an array + fwrite($handle, json_encode(array($currentPost))); + } + + // close the handle on the file + fclose($handle); + } + } + } + header("Location: ../posts/$returnLocation/?return=$returnCode"); +?> +<!DOCTYPE html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <title>Guestbook</title> + <link href="../style.css" rel="stylesheet" type="text/css" media="all"> + <style type="text/css"> + body { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + } + </style> + <?php include($_SERVER['DOCUMENT_ROOT'] . '/seasonal.php'); ?> + </head> + <body> + <p>Your post has been submitted! It's weird that you're seeing this page though. Maybe your browser can't process location headers? At any rate, click <?php echo "<a href='./?return=$returnCode'>here</a>"; ?> to get where you're supposed to be right now.</p> + </body> +</html>
\ No newline at end of file |
