Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- // functions
- /**
- * Записывает сообщение в файл
- *
- * @param string $name
- * @param string $message
- * @param string $filename
- */
- function saveMessageToFile($name, $message, $filename)
- {
- $data = "$name,$message\n";
- file_put_contents($filename, $data, 8);
- }
- /**
- * Читает файл и возвращает массив с сообщениями
- *
- * @param string $filename
- *
- * @return array
- */
- function loadMessagesFromFile($filename)
- {
- if (!file_exists($filename)) {
- return [];
- }
- $rows = file($filename);
- $result = [];
- foreach ($rows as $row) {
- if (empty($row) or $row == "\n") {
- continue;
- }
- $explode = explode(',', $row);
- $result[] = [
- 'username' => $explode[0],
- 'message' => $explode[1]
- ];
- }
- return $result;
- }
- // the code
- $filename = 'data.txt';
- if ($_SERVER['REQUEST_METHOD'] == 'POST') {
- saveMessageToFile($_POST['username'], $_POST['message'], $filename);
- }
- $messages = loadMessagesFromFile($filename);
- ?>
- <html>
- <head>
- <title>Гостевая книга</title>
- <style>
- .container {
- margin: 0 auto;
- width: 70%;
- }
- .messages-block {
- border: solid 1px;
- padding: 10px 5px;
- background-color: #11ff8f;
- }
- </style>
- <script>
- console.log("123");
- </script>
- </head>
- <body>
- <div class="container">
- <h1>Гостевая книга</h1>
- <h2>Сообщения</h2>
- <div class="messages-block">
- <?php
- foreach ($messages as $item) {
- echo "<p><b>{$item['username']}</b>: {$item['message']}</p>";
- }
- ?>
- </div>
- <h2>Добавить свое сообщение</h2>
- <form method="post">
- <div class="form-group">
- <label for="username">Ваше имя:</label>
- <input id="username" name="username" type="text">
- </div>
- <div class="form-group">
- <label for="text">Текст сообщения:</label>
- <input id="text" type="text" name="message">
- </div>
- <div class="form-group">
- <button type="submit">Отправить сообщение</button>
- </div>
- </form>
- </div>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement