Skip to content

Instantly share code, notes, and snippets.

@sunmeat
Last active December 16, 2025 10:58
Show Gist options
  • Select an option

  • Save sunmeat/35133c160015f87154f073588a4d701d to your computer and use it in GitHub Desktop.

Select an option

Save sunmeat/35133c160015f87154f073588a4d701d to your computer and use it in GitHub Desktop.
ДЗ гостьова книга

Створити веб-додаток «Гостьова книга», що задовольняє таким вимогам:

  1. На головній сторінці index.cshtml виводяться повідомлення користувачів. При цьому кожне повідомлення виводиться в окремій таблиці, де вказується логін користувача, який залишив повідомлення, текст повідомлення, а також дата і час надсилання повідомлення.

  2. У заголовковій частині головної сторінки виводяться дві посилання:

    • «Вхід у систему» — перенаправлення на сторінку авторизації login.cshtml у разі, якщо користувач не вводив логін і пароль, а увійшов у систему як гість.
    • «Реєстрація» — перенаправлення на сторінку registration.cshtml.
  3. Користувачі, які пройшли авторизацію, бачать багаторядкове текстове поле для вводу повідомлення, кнопку «Додати повідомлення» та кнопку «Вихід», за якою завершується сеанс.

  4. Сторінка login.cshtml — слугує для аутентифікації користувача. Містить поля «Логін», «Пароль», а також три кнопки:

    • «Увійти» — перенаправлення на сторінку index.cshtml, де є багаторядкове текстове поле для вводу повідомлення.
    • «Реєстрація» — перенаправлення на сторінку registration.cshtml.
    • «Увійти як гість» — перенаправлення на сторінку index.cshtml (тільки для перегляду повідомлень).
  5. Сторінка registration.cshtml призначена для реєстрації користувача. Користувач вводить у відповідні поля логін, пароль, підтвердження пароля. При цьому проводиться контроль заповнення всіх полів реєстраційної форми, а також контроль вводу коректних значень за допомогою валідаторів. При успішній реєстрації дані про користувача заносяться до бази даних MS SQL Server, і браузер перенаправляється на сторінку login.cshtml.

  6. Рекомендована структура бази даних:

    • Users (Користувачі): Id (int, PK), Login (nvarchar), PasswordHash (nvarchar), тощо.
    • Messages (Повідомлення): Id (int, PK), UserId (int, FK до Users), Text (nvarchar), DateTime (datetime).

    Для зберігання паролів обов'язково використовувати хешування.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment