fork download
  1. <?php
  2.  
  3. // Обработка сброса счётчика
  4. if (isset($_POST['reset'])) {
  5. $_SESSION['visits'] = 0;
  6. $message = "Счётчик сброшен";
  7. }
  8. // Обработка отправки имени
  9. elseif (isset($_POST['username']) && !empty(trim($_POST['username']))) {
  10. $_SESSION['username'] = trim($_POST['username']);
  11. // Увеличиваем счётчик при установке имени
  12. if (!isset($_SESSION['visits'])) {
  13. $_SESSION['visits'] = 1;
  14. } else {
  15. $_SESSION['visits']++;
  16. }
  17. $message = "Привет, {$_SESSION['username']}! Вы были на этой странице {$_SESSION['visits']} раз";
  18. }
  19. // Обычное обновление страницы
  20. else {
  21. if (isset($_SESSION['visits'])) {
  22. $_SESSION['visits']++;
  23. } else {
  24. $_SESSION['visits'] = 1;
  25. }
  26.  
  27. if (isset($_SESSION['username'])) {
  28. $message = "Привет, {$_SESSION['username']}! Вы были на этой странице {$_SESSION['visits']} раз";
  29. } else {
  30. $message = "Вы были на этой странице {$_SESSION['visits']} раз";
  31. }
  32. }
  33. ?>
  34.  
  35. <!DOCTYPE html>
  36. <html lang="ru">
  37. <head>
  38. <meta charset="UTF-8">
  39. <title>Счётчик посещений и приветствие</title>
  40. </head>
  41. <body>
  42. <h1>Счётчик посещений через сессию</h1>
  43.  
  44. <p><?= $message ?></p>
  45.  
  46. <!-- Форма для ввода имени -->
  47. <?php if (!isset($_SESSION['username'])): ?>
  48. <form method="post">
  49. <label for="username">Введите ваше имя:</label>
  50. <input type="text" id="username" name="username" required>
  51. <button type="submit">Сохранить имя</button>
  52. </form>
  53. <?php endif; ?>
  54.  
  55. <!-- Форма для сброса счётчика -->
  56. <form method="post">
  57. <button type="submit" name="reset">Сбросить счётчик</button>
  58. </form>
  59.  
  60. <!-- Кнопка для смены имени -->
  61. <?php if (isset($_SESSION['username'])): ?>
  62. <form method="post">
  63. <input type="hidden" name="change_name" value="1">
  64. <button type="submit">Сменить имя</button>
  65. </form>
  66. <?php endif; ?>
  67. </body>
  68. </html>
Success #stdin #stdout 0.03s 25908KB
stdin
Standard input is empty
stdout
<!DOCTYPE html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title>Счётчик посещений и приветствие</title>
</head>
<body>
    <h1>Счётчик посещений через сессию</h1>
    
    <p>Вы были на этой странице 1 раз</p>

    <!-- Форма для ввода имени -->
        <form method="post">
        <label for="username">Введите ваше имя:</label>
        <input type="text" id="username" name="username" required>
        <button type="submit">Сохранить имя</button>
    </form>
    
    <!-- Форма для сброса счётчика -->
    <form method="post">
        <button type="submit" name="reset">Сбросить счётчик</button>
    </form>

    <!-- Кнопка для смены имени -->
    </body>
</html>