курсовая
.pdf
1.Наполнение главной страницы
Реализуется наполнение главной страницы. Это представлено на рисунке 12.
Рисунок 12 – Описание главной страницы
2.Реализация запроса
Реализуется наполнение страницы Raspisanie.aspx с расписанием при помощи SQL-запроса. Производится поиск занятий по дням недели, где выводится номер урока, начало и окончание урока, предмет, фамилия учителя и класс, у которого занятие. Аналогично можно сделать фильтрацию по классу и одновременно по классу и дню недели. Страница в конструкторе представлена на рисунке 13, результат на рисунке 14. Логика передачи SQL-
запроса таблице заложена в кнопках, которые представлены в Приложении.
Рисунок 13 – Страница поиска заказа в конструкторе
Рисунок 14 – Результат выполнения запроса на сайте расписания
3.Фильтрация данных
На сайте Tasks.aspx же поиска заданий по классу реализована отдельная страница. Здесь выводится информация о задании класса с такими данными: название предмета, название задания, описание, дедлайн,
максимальный балл. Сайт в конструкторе представлен на рисунке 15,
результат выполнения запроса на сайте на рисунке 16. Логика работы представления таблицы заложена в SqlDataSource.
Рисунок 15 - Страница сайта каталогов в конструкторе
Рисунок 16 – Фильтрация по сезону и типу одежды
6.Реализация авторизации и регистрации
1. Авторизация
Реализуется блок авторизации в конструкторе на шаблоне главной страницы. Здесь пользователя для авторизации должен указать логин и пароль, а также указать одну из ролей: учитель, ученик, родитель. Если пользователь неверно вводит пароль, то высвечивается сообщение о неправильном вводе. При успешном вводе появляется сообщение «Привет, …», а также пропадают все поля ввода. Также здесь же существует кнопка для перехода к окну регистрации. Авторизация в конструкторе представлена на рисунке 17, результат работы на рисунках 18-19. Логика работы
представлена в Приложении (main.Page.master.cs).
Рисунок 17 – Авторизация в конструкторе
Рисунок 18 – Авторизация при неверном вводе
Рисунок 19 – Пример успешной авторизации
2.Регистрация
При нажатии на кнопку регистрации появляется окно для заполнения данных в другой веб-форме. Веб-форма в конструкторе представлена на рисунке 20.
Рисунок 20 – Регистрация в конструкторе
Здесь пользователь должен заполнить данные о себе: Имя, Фамилия,
Отчество, Телефон, Логин и Пароль. Здесь же предусмотрена валидация на обязательное заполнение полей. Также он должен указать свою роль для работы. При нажатии на кнопку регистрации происходит SQL-запрос в БД на добавление. Результат заполнения формы на сайте представлен на рисунке
21, проверка в БД на рисунке 22. Логика регистрации представлена в Приложении (Raspisanie.aspx.cs).
Рисунок 21 – Регистрация на сайте
Рисунок 22 – Появление данных в БД Access
ЗАКЛЮЧЕНИЕ
Подготовлена презентация для обсуждения требований к ИС школы. Выделены основные категории пользователей и сформулированы функциональные требования к системе.
Выделены объекты и изучены отношения между объектами ИС школы. Разработаны диаграммы последовательности событий для сложных прецедентов.
Произведена визуализация, конструирование и документация динамических аспектов информационной системы школы.
Создана полная атрибутивная модель, содержащая все сущности в 3- ей нормальной форме с атрибутами и связями.
Создана информационная система при помощи технологии ASP.NET. В разработанной системе реализован следующий основной функционал:
Фильтрация данных по определенным критериям
Авторизация
Регистрация нового пользователя
ПРИЛОЖЕНИЕ
Файл main.Page.master.cs
using System;
using System.Collections.Generic; using System.Diagnostics;
using System.Linq; using System.Web; using System.Web.UI;
using System.Web.UI.WebControls; using System.Data.OleDb;
using System.Data.SqlClient; using System.Reflection.Emit;
namespace maxim
{
public partial class Site1 : System.Web.UI.MasterPage
{
protected void LinkButton1_Click(object sender, EventArgs e)
{
Response.Redirect("Homepage.aspx");
}
protected void Page_Load(object sender, EventArgs e)
{
long iduser = Convert.ToInt64(Session["IDP"]); string myuser = Convert.ToString(Session["IdU"]); if (iduser != 0)
{
TextBox1.Visible = false;
TextBox2.Visible = false;
Label1.Visible = true;
Label2.Visible = false;
Label3.Visible = false;
Label4.Visible = false;
Label5.Visible = false;
Button2.Visible = true;
Button1.Visible = false;
Button3.Visible = false;
RoleDropDownList.Visible = false;
Label1.Text = "Привет, " + myuser;
LinkButton3.Visible = true;
}
else
{
TextBox1.Visible = true;
TextBox2.Visible = true;
Label1.Visible = false;
Label2.Visible = false;
Label3.Visible = true;
Label4.Visible = true;
Label5.Visible = true;
Button2.Visible = false;
Button1.Visible = true;
Button3.Visible = true;
RoleDropDownList.Visible = true;
}
}
protected void LinkButton2_Click(object sender, EventArgs e)
{
Response.Redirect("Raspisanie.aspx");
}
protected void LinkButton3_Click(object sender, EventArgs e)
{
Response.Redirect("Tasks.aspx");
}
protected void Button1_Click(object sender, EventArgs e)
{ |
|
|
string |
connectionString |
= |
@"Provider=Microsoft.ACE.OLEDB.12.0;Data |
Source=D:\Study\7 |
|
semester\Information systems design\qqq.mdb";
var connect = new OleDbConnection(connectionString); connect.Open();
string sparol, slogin; long srole;
sparol = Convert.ToString(TextBox2.Text);
slogin = Convert.ToString(TextBox1.Text);
srole = Convert.ToInt64(RoleDropDownList.SelectedValue); string sqlQ = string.Empty;
if (srole == 1)
{
sqlQ = "SELECT * FROM Teacher WHERE login_teacher='" + slogin
+ "' AND password_teacher='" + sparol + "'";
}
else if (srole == 2)
{
sqlQ = "SELECT * FROM Child WHERE login_child='" + slogin + "' AND password_child='" + sparol + "'";
}
else if (srole == 3)
{
sqlQ = "SELECT * FROM Parent WHERE login_parent='" + slogin + "' AND password_parent='" + sparol + "'";
}
else if (srole == 0)
{
Label2.Text = "Выберите роль"; Label2.Visible = true; return;
}
var mycom = new OleDbCommand(); mycom.CommandText = sqlQ; mycom.Connection = connect;
OleDbDataReader myread = mycom.ExecuteReader(); if (myread.Read() == true)
{
Session["IdU"] = slogin;
Session["IDP"] = Convert.ToString(myread.GetValue(0));
TextBox1.Visible = false;
TextBox2.Visible = false;
Label1.Visible = true;
Label2.Visible = false;
Label3.Visible = false;
Label4.Visible = false;
Label5.Visible = false;
Button2.Visible = true;
Button1.Visible = false;
Button3.Visible = false;
RoleDropDownList.Visible = false;
Label1.Text = "Привет, " + slogin + "!";
}
else
{
Label2.Visible = true;
