Создание Web-сайта 'Интернет-магазин программного обеспечения'

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    1,38 Мб
  • Опубликовано:
    2013-04-03
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Создание Web-сайта 'Интернет-магазин программного обеспечения'
















создание Web-сайта «Интернет-магазин программного обеспечения»

СОДЕРЖАНИЕ

электронный магазин программирование

ВВЕДЕНИЕ

. ОПИСАНИЕ ТЕМЫ

.СТРУКТУРА WEB-САЙТА

3. РЕГИСТРАЦИОННАЯ ФОРМА

4. ПОДКЛЮЧЕНИЕ WEB-САЙТА К БАЗЕ ДАННЫХ (MICROSOFT ACCESS)

5. СОЗДАНИЕ СТРАНИЦЫ ПОЛЬЗОВАТЕЛЯ(USER)

6. ПРОВЕРКА ВХОДЯЩЕЙ ИНФОРМАЦИИ ДЛЯ WEB-САЙТА

7. СОЗДАНИЕ СТРАНИЦЫ АДМИНИСТРАТОРА (ADMIN)

8. УПРАВЛЕНИЕ ДАННЫМИ СО СТОРОНЫ АДМИНИСТРАТОРА

ЗАКЛЮЧЕНИЕ

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

ВВЕДЕНИЕ

Данная работа выполнялась в рамках курса изучения технологии ASP и ASP.NET. Технологии ASP представляют собой среду написания сценариев на стороне сервера, которую можно использовать для динамического изменения веб-содержимого. ASP требует знания языков сценариев, например, VBScript или JavaScript (JScript). «встроена» в Internet Information Services (IIS), который является составной частью архитектуры Microsoft для Web-приложений. Роль IIS состоит в связывании клиентов, обращающихся к системе через протокол HTTP, с другими службами Windows.

Напоминаем, что IIS доступен в ОС Windows 2000-2003 или в Windows XP Professional после установки соответствующих компонент Windows. При стандартной установке указанных ОС сервер IIS не доступен.

Если Вы используете встроенные антивирусные средства на Вашем компьютере, то необходимо им запретить блокировку скриптов, иначе, большинство скриптов ASP работать не будет. Внутри программы Visual Studio 2010 существует технология ASP.NET. В первые дни нашего урока мы познакомились введениями ASP.NET, язык разметки HTML и использование в Visual Studio 2010.

В предлагаемой теме курсовой работы в теме «Интернет-магазин программного обеспечения» старалось включить все знание, которое я изучал из этого курса и закончил свою работу. Все информация в Web-сайте написано в русском языке, который облегчить работу пользователя и будет очень понятным.

Целью данной работы являются создать Web-сайт с помощью технологии ASP.NET.

В работе подробно описаны примеры администрирования сайта, пользовательские привилегии и управления сайта.

1. ОПИСАНИЕ ТЕМЫ

Тема данной курсовой работы является создание Web-сайта «Интернет-магазин программного обеспечения».

Для создания этого сайта используется программа Visual Studio 2010. В процессе разработки в основном используется язык программирования VbScript.

Данный Web-сайт подключен в базу данных (MS Access) при помощи элемента управление AccessDataSource и содержит всё информацию о товарах и пользователях которые уже сделали регистрацию в этот сайт. Когда пользователь сделает регистрацию в данный сайт, то его информация сохраняется в базе данных данного сайта. Также в этом базе данных сохраняется товары, которые пользователь добавляет в свою корзину. Когда пользователь сделает регистрацию, то администратор должен обязательно дать доступ к пользователю для входа в сайт.

Администратор сайта имеет привилегию удаление пользователя из сайта, изменение данных о пользователя и дать доступ пользоваться сайтом или наоборот.

Основнуючасть работы Web-сайта делает база данных (MS Access), которая сохраняет в себе все данные сайта.

Еще в сайте использовано технология корзины покупок, которые является одна из популярных моделей электронной торговли. Эта технология обработки заказов позволяет заказчиком накапливать и сохранять списки товаров, которые они пожелали купить во время просмотра электронного магазина. Программное обеспечение электронного магазина должно включать каталог товаров, находящийся на сервере продавца в форме базы данных.

2.СТРУКТУРА WEB-САЙТА

Модельная структура. Модельная структура Web-сайта это модель основного страницы сайта, которые показано в рис 2.1.

Рис 2.1. Модельная структура

Физическая структура. Физическая структура Web-сайта это расположения файла, которые показано в рис 2.2.

Рис 2.2.Физическая структура

Структура текущих Web-сайта соответствует стандартам других сайтов. Первая страница Web-сайта имеет баннер, панель с кнопками управление, которые расположены на левом и на верхним стороне Web-сайта. И еще первой странице Web-сайта присутствует контент, которые отображает информации Web-сайта. Внизу страницы вставлено информация о правах автора и еще вставлено гиперссылка, которые возвращает пользователя в главную страницу Web-сайта. В главной странице сайта расположено регистрационная форма, которая пользователь может легко сделать регистрацию и после администраторского доступа может легко войти в систему.

В главном странице сайта приведено немного информации о сайте и вставлено электронный адрес администратора для отправления сообщение к администратору. Код главной странице сайта приведено на листинге 2.1.

Листинг 2.1 HTML- код главной страницы

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "#"601408.files/image003.gif">

Рис 2.3.Вид главной страницы

. РЕГИСТРАЦИОННАЯ ФОРМА

Один из основных формы Web-сайта считается регистрационная форма. Регистрационная форма нужен для регистрации пользователя, чтобы пользователь мог полноценно работать в этом Web-сайте. Сегодня почти все Web-сайты имеет регистрационную форму, которые пользователю даст много возможности пользоваться сайтом. Однако после регистрации пользователя все его данные сохраняется в базе данных Web-сайта. А в другой стороне регистрационная форма обеспечит безопасность Web-сайта, сервер Web-сайта (Администратор) при создании регистрационную форма, его обязательно подключить в базу данных для сохранения все данные о пользователях. При возникновении какой-нибудь проблемы администратор может исправлять ошибки через БД или при нарушении правила сайта администратор может удалить пользователя из база данных. При этом пользователь не может войти в систему.

Листинг 3.1 HTML-код регистрационной формы

<asp:TableCell runat="server" ColumnSpan="1" Width="480px" VerticalAlign="Top" Font-Italic="True"Names="Palatino Linotype" Font-Size="Medium" ForeColor="White" HorizontalAlign="Justify">

<asp:MultiView ID="MultiView1" runat="server" ActiveViewIndex="6">

<asp:View ID="View1" runat="server">

<asp:Panel ID="Panel1" runat="server">

<asp:Table ID="Table4" runat="server" HorizontalAlign="center" BorderWidth="2" BorderColor="AliceBlue">

<asp:TableRow>

<asp:TableCell>Имя</asp:TableCell>

<asp:TableCell>

<asp:TextBox ID="txtnom" runat="server"></asp:TextBox>

<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txtnom"="Dynamic" ErrorMessage=" *" ForeColor="Red" SetFocusOnError="True"></asp:RequiredFieldValidator>

</asp:TableCell>

</asp:TableRow>

<asp:TableRow>

<asp:TableCell>Фамилия</asp:TableCell>

<asp:TableCell>

<asp:TextBox ID="txtnasab" runat="server"></asp:TextBox>

<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="txtnasab"="Dynamic" ErrorMessage=" *" ForeColor="Red" SetFocusOnError="True"></asp:RequiredFieldValidator>

</asp:TableCell>

</asp:TableRow>

<asp:TableRow>

<asp:TableCell>Отчество</asp:TableCell>

<asp:TableCell>

<asp:TextBox ID="txtmdname" runat="server"></asp:TextBox>

<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ControlToValidate="txtmdname"="Dynamic" ErrorMessage=" *" ForeColor="Red" SetFocusOnError="True"></asp:RequiredFieldValidator>

</asp:TableCell>

</asp:TableRow>

<asp:TableCell>Пол</asp:TableCell>

<asp:TableCell>

<asp:DropDownList ID="jins" runat="server">

</asp:DropDownList>

</asp:TableCell>

</asp:TableRow>

<asp:TableRow>

<asp:TableCell>Дата рождение</asp:TableCell>

<asp:TableCell>

<asp:DropDownList ID="ruz" runat="server">

</asp:DropDownList>

<asp:DropDownList ID="moh" runat="server">

</asp:DropDownList>

<asp:DropDownList ID="sol" runat="server">

</asp:DropDownList>

</asp:TableCell>

</asp:TableRow>

<asp:TableRow>

<asp:TableCell>Адрес</asp:TableCell>

<asp:TableCell>

<asp:TextBox ID="suroga" runat="server"></asp:TextBox>

<asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ControlToValidate="suroga"="Dynamic" ErrorMessage=" *" ForeColor="Red" SetFocusOnError="True"></asp:RequiredFieldValidator>

</asp:TableCell>

</asp:TableRow>

<asp:TableRow>

<asp:TableCell>Номер телефона</asp:TableCell>

<asp:TableCell>

<asp:TextBox ID="pnumber" runat="server"></asp:TextBox>

<asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ControlToValidate="pnumber"="Dynamic" ErrorMessage=" *" ForeColor="Red" SetFocusOnError="True"></asp:RequiredFieldValidator>

</asp:TableCell>

</asp:TableRow>

<asp:TableRow>

<asp:TableCell>Логин</asp:TableCell>

<asp:TableCell>

<asp:TextBox ID="txtlogin1" runat="server"></asp:TextBox>

<asp:RequiredFieldValidator ID="RequiredFieldValidator6" runat="server" ControlToValidate="txtlogin1"="Dynamic" ErrorMessage=" *" ForeColor="Red" SetFocusOnError="True"></asp:RequiredFieldValidator>

<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="txtlogin1"

ErrorMessage=" Недопустимые символы в логин пользователя, проверти раскладку клавиатуры!!! "="Dynamic" ValidationExpression="\w*" ForeColor="Red"></asp:RegularExpressionValidator>

</asp:TableCell>

</asp:TableRow>

<asp:TableRow>

<asp:TableCell>Пароль</asp:TableCell>

<asp:TableCell>

<asp:TextBox ID="txtpassword1" runat="server" TextMode="Password" MaxLength="10"></asp:TextBox>

<asp:RequiredFieldValidator ID="RequiredFieldValidator7" runat="server" ControlToValidate="txtpassword1"="Dynamic" ErrorMessage=" *" ForeColor="Red" SetFocusOnError="True"></asp:RequiredFieldValidator>

<asp:RegularExpressionValidator ID="RegularExpressionValidator2" runat="server" ControlToValidate="txtpassword1"

ErrorMessage="Пароль должен быть больше 5-символов и на латинском букве!!!"

Display="Dynamic" ForeColor="Red" ValidationExpression="(?!^[0-9]*$)(?!^[a-zA-Z]*$)^([a-zA-Z0-9]{5,10})$"></asp:RegularExpressionValidator>

</asp:TableCell>

</asp:TableRow>

<asp:TableRow>

<asp:TableCell>Потверждение</asp:TableCell>

<asp:TableCell>

<asp:TextBox ID="txtpassword2" runat="server" TextMode="Password" MaxLength="10"></asp:TextBox>

<asp:CompareValidator ID="CompareValidator1" runat="server" ControlToCompare="txtpassword1"="txtpassword2" ErrorMessage="Не совпадает!" ForeColor="Red"></asp:CompareValidator>

</asp:TableCell>

</asp:TableRow>

<asp:TableRow>

<asp:TableCell>Ваш секретный вопрос</asp:TableCell>

<asp:TableCell>

<asp:TextBox ID="txtsekret" runat="server" TextMode="SingleLine"></asp:TextBox>

<asp:RequiredFieldValidator ID="RequiredFieldValidator8" runat="server" ControlToValidate="txtsekret"="Dynamic" ErrorMessage=" *" ForeColor="Red" SetFocusOnError="True"></asp:RequiredFieldValidator>

</asp:TableCell>

</asp:TableRow>

<asp:TableRow>

<asp:TableCell ColumnSpan="2" HorizontalAlign="center">

<asp:Button ID="Button1" runat="server" Text="Регистрация" PostBackUrl="~/data/Savetodb.aspx" />

<br />

<asp:Label ID="regis_error" runat="server" Text=""></asp:Label><br />

<asp:Label ID="regis_error1" runat="server" Text=""></asp:Label>

</asp:TableCell>

</asp:TableRow>

</asp:Table>

</asp:Panel>

</asp:View>

Итак, расскажем об использовании элементов для создания регистрационного форма. Регистрационная форма расположено внутри Multiview в основной странице, которая отображается из контента Web-сайта. При нажатии ссылки «Регистрация» откроется сообщения общие правила поведения сайта, после соглашения откроется регистрационная форма.

Регистрационная форма создано при использовании элементов Textbox, DropDownList и Button, все из этих объектов, в линейках расположено в нужном месте. Еще для проверки Textbox-а на пустоту (имеет ли данные или нет) используется элемент проверки Validator, точнее RequiredFieldValidator, которые используется для проверки пустоту или заполнение данные для нужной Textbox-а. После заполнение всех данных, в регистрационном форме, все данные сохраняется в базу данных (как записать данные и читать данные из БД расскажем в следующем главе ).

Вид регистрационной формы показан на рис 3.1.

Рис 3.1 Регистрационная форма

После нажатия кнопки регистрации пользователю сообщает об успешной регистрации, если существует одинаковые логины, то вводится сообщение об ошибки «такой логин уже существует».

4. ПОДКЛЮЧЕНИЕ WEB-САЙТА К БАЗЕ ДАННЫХ (Microsoft Access)

Подключение Web-сайта к базе данных это из основных работ программиста, без подключения база данных программа или Web-сайт не имеет смысл существования. В этом главе расскажем процесс подключения базы данных в Web-сайт. В основном мы используем три варианта подключения, которые мы изучали в течение курса. Первый вариант подключения база данных с помощью элемента AccessDataSource, которые поддерживает расширения файла (.*mdb , .*accdb). Второй способ подключения база данных при использовании элемента SqlDataSource, которые поддерживает файлы (MS Access) и (SQL). А третий вариант подключения база данных с помощью библиотеки Imports System.Data.Oledb. В текущим Web-сайте использовано только два способа подключения база данных, то есть работы с библиотеками Improts System.Data.OleDb и элементам AccessDataSource.

Итак, приведём примеры по подключению база данных со страницами сайта. Уже мы рассказывали, что в нашем проекте используется только два способа подключения база данных, первый способ с помощью Imports System.Data .OleDb которые используется для просмотра продуктов, второе способ это с помощью элемента которые используется для сохранения данные регистрационной форме в базу данных.

Итак, посмотрим первый способ подключения база данных (Imports System.Data.Oledb), которые используется в файле Default.aspx.vb и считается файл главного страницы.

Посмотрим способ чтения информации и его отображения в контенте, его код показано в листинги 4.1:

Листинг 4.1 Код программы System.Data.OleDb

Imports System.DataClass _DefaultSystem.Web.UI.Pagecon_access As OleDbConnectioncmd_access As OleDbCommandreader_access As OleDbDataReaderSub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.LoadconnectionString As String = ""query_sql As String = "SELECT * FROM product where status=1 and id_catalog=1"= "Provider=Microsoft.Jet.Oledb.4.0;Data Source=C:\Inetpub\wwwroot\www.softkey.tj\data\base.mdb"_access = New OleDbConnection(connectionString)con_access.Open()_access = New OleDbCommand(query_sql, con_access)_access = cmd_access.ExecuteReader()reader_access.HasRows = True Thencounter1 As Integer = 0_2.Text = "<table><tr>"While reader_access.Read()_2.Text = label_2.Text & "<td>"_2.Text = label_2.Text & "<table border=1>Регистрация прошло успешно!"_regis1.Text = "Registration passed with success!"Request.QueryString("sah") = "error" Then

MultiView1.ActiveViewIndex = 3.Text = "Администратор еще не дал доступа!"

lblerror1.Text = "The Admin (Manager) did not give an access!"Request.QueryString("sah") = "error1" Then.ActiveViewIndex = 3.Text = "Пороль или логин не правильно".Text = "Password or login was entered by mistake!"Request.QueryString("sah") = "error2" Then.ActiveViewIndex = 3.Text = "Обязательно вводите пароль и логин!".Text = "You have to enter the login and password!"Request.QueryString("sah") = "zabili_parol" Then.ActiveViewIndex = 15IfIfRequest.Form("bt_vos") <> "" Then_sql = "SELECT * FROM users where pnumber='" & Request.Form("txt1p") & "' and sekret_vop='" & Request.Form("txt2s") & "'"= "Provider=Microsoft.Jet.Oledb.4.0;Data Source=C:\Inetpub\wwwroot\www.softkey.tj\data\base.mdb"_access = New OleDbConnection(connectionString)_access.Open()_access = New OleDbCommand(query_sql, con_access)_access = cmd_access.ExecuteReader()reader_access.HasRows = True ThenWhile reader_access.Read()_zabil.Text = "Ваш логин= " & reader_access(8) & "; Ваш пароль= " & reader_access(9)

Exit Do_zabil.Text = "Ваш номер телефон или ваш секретный вопрос неправленый!!! End If_access.Close()_access.Close() End If.Items.Clear().Items.Add("").Items.Add("Жен").Items.Add("Муж")i = 1 To 31.Items.Add(i)j = 1 To 12.Items.Add(j)k = 1945 To Date.Now.Year.Items.Add(k)Sub

Далее посмотрим, как произойдёт чтение данные из база данных. Для того чтобы все успешно завершилось впервые надо объявить библиотеку Imports System. Data.Oledb и после этого библиотеки надо объявить еще три вспомагательное перемнные для завершения работы. Первый переименую, объявим как OledbConnection, которая используется для подключения база данных, вторая переменная используется как OledbCommand для отправки запросов, третье это переменная используется как OledbDataReader для результата запроса.

После этой работы надо обязательно дать адрес нашего база данных для успешного подключения и для обработки данных.

(connectionString="Provider=Microsoft.Jet.Oledb.4.0;DataSource=C:\Inetpub\wwwroot\www.softkey.tj\data\base.mdb")

После определения адрес база данных (MS Access), надо дать запросов для получения результата (Dim query_sql As String = "SELECT * FROM product where status=1 and id_catalog=5"), после исполнения этих запросов, вводится конкретный результат нашего запроса. Итак, после нажатия гиперссылки «Прочие» в главном странице увидим результат нашего запроса, смотрите на рис.4.1.

Рис 4.1Результат запроса

Второй способ подключения к базе данных это с помощью элемента AccessDataSource. Этот способ я использовал для сохранения данные регистрационного форме, когда пользователь без ошибки сделает регистрацию. Когда пользователь нажмет на кнопку «Регистрация», сначала идет проверка на ошибку если не найдет ошибку то данные успешно сохраняется в базе данных. Перед сохранением данные файл Savetodb.aspx.vb обрабативает и сохроняет данные о регистрациях.

Листинг 4.2 Код проверки данные регистрационной форме

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Clicktxtnom.Text <> "" And txtnasab.Text <> "" And txtmdname.Text <> "" And suroga.Text <> "" And pnumber.Text <> "" And.Text <> "" And txtpassword1.Text <> "" And txtsekret.Text <> "" ThenconnectionString As String = ""query_sql As String = "SELECT * FROM users where login='" & txtlogin1.Text & "'"= "Provider=Microsoft.Jet.Oledb.4.0;Data Source=C:\Inetpub\wwwroot\www.softkey.tj\data\base.mdb"_access = New OleDbConnection(connectionString)_access = New OleDbCommand(query_sql, con_access)_access.Open()_access = cmd_access.ExecuteReader()reader_access.HasRows = True Then_access.Read()reader_access(8).ToString = txtlogin1.Text Then

regis_error.Text = "Ощибка: Такой логин уже существует!"

regis_error1.Text = "Error: The login which you entered is busy!"If_error.Text = ""_error1.Text = "".PostBackUrl = "~/data/Savetodb.aspx"_access.Close()_access.Close()IfIfSub

End Class

 

Рис 4.2 Заполнение регистрационной формы

Как уже нам известно, из листинга 4.2 , когда нажимаем на кнопку «Регистрация» то полностью проверить регистрационную форму если ошибка не найдет то данные отправляется в файл “Savetodb.aspx. Итак, посмотрим, как данные обрабатывается в файле «Savetodb.aspx». Дополнительный код обработки данных показано на листинги 4.3.

Листинг 4.3 Код программы, для добавления, данные в базу данных

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Loadprev As Page = PreviousPageprev.IsPostBack Thentname As TextBox = prev.FindControl("txtnom")tlastname As TextBox = prev.FindControl("txtnasab")tmdname As TextBox = prev.FindControl("txtmdname")jins As DropDownList = prev.FindControl("jins")ruz As DropDownList = prev.FindControl("ruz")moh As DropDownList = prev.FindControl("moh")sol As DropDownList = prev.FindControl("sol")sanai_tavallud As String_tavallud = ruz.SelectedValue & "/" & moh.SelectedValue & "/" & sol.SelectedValuesuroga As TextBox = prev.FindControl("suroga")pnumber As TextBox = prev.FindControl("pnumber")tlogin As TextBox = prev.FindControl("txtlogin1")tpassword As TextBox = prev.FindControl("txtpassword1")tsekret As TextBox = prev.FindControl("txtsekret")sql_query As String = ""_query = "insert into users(nom,sname,mdname,jins,sanai_tavallud,suroga,pnumber,login,parol,sekret_vop) values ('" & tname.Text & "','" & tlastname.Text & "','" & tmdname.Text & "','" & jins.SelectedValue & "','" & sanai_tavallud & "','" & suroga.Text & "','" & pnumber.Text & "','" & tlogin.Text & "','" & tpassword.Text & "','" & tsekret.Text & "')".InsertCommand = sql_query.Insert().Redirect("../default.aspx?sah=success").Redirect("../default.aspx?sah=error")IfSubClass

Мы узнали, что с помощью кода из листинга 4.3 данные сохраняется в базу данных, которые отправлено из страницы Previos Page (из страницы Default.aspx), информацию которые мы получаем, сохраняем в отдельную переменную и с помощью запроса “Insert()” добавляем данные в таблицу. Итак, для того чтобы быть уверенным проверяем базу данных, которые существует данные из рисунка 4.2 или нет. Результат добавление данные в БД из регистрационной форме показано в рис.4.3.

Рис 4.3 Результат запроса на добавление

Информация пользователя успешно сохранена, итак пользователь имеет доступ к сайтам при входе систему еще шаг осталось. Чтобы пользователь беспокойно входил в систему, администратор сайта должен подтвердит последнюю пользователь, которая, сделал регистрацию. Для того чтобы сделать администратор должен войти в систему и сделать статус последнего пользователя равным 2. Когда статус равняется 2, то пользователь может входить систему и сделать покупку в нашем интернет магазине.

5. СОЗДАНИЕ СТРАНИЦЫ ПОЛЬЗОВАТЕЛЯ (USER)

Страница пользователи доступен для тех который, уже зарегистрировались, имеет доступ для входа в систему. Страница пользователи можно сказать основным страницам, потому что когда пользователь входит в сайт то его возможность по больше, будет покупать продукты, узнать состояние своего корзины покупок, может видеть свою последнюю дату визита и его количество входов в страницу. А также пользователь может узнать новостей недели, может управлять своим корзинам (удалять ненужные продукты), может выбрать любую продукту с любым количеством и может узнать сумму своего продукта из корзины покупок.

Также в страницу пользователя использовано табличный дизайн и подключено в базу данных, для сохранения, данные о пользователя. HTML-код страницы показано на листинги 5.1.

Листинг 5.1 HTML-код страницы пользователя

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="user.aspx.vb" Inherits="users_user" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "#"601408.files/image008.gif">

Рис 5.1 Выбор продукта для корзины

После выбора продуктов он добавляется в корзину в нашем случае добавлено две продукти (см. рис 5.2).

Рис 5.2 Технология корзина

Когда пользователь нажимает на кнопку выход, то он покинуть сайт и отправляется в главную страницу Web-сайта. Также код корзины привидено в листинги 5.2.

Листинг 5.2 Код корзины

Imports System.Data.OleDb

Partial Class data_savetobasketSystem.Web.UI.PageconnectionString As Stringcon_access As OleDbConnectioncmd_access As OleDbCommandreader_access As OleDbDataReaderSub form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles form1.Loadprev As Page = PreviousPageprev.IsPostBack Thennom As DropDownList = prev.FindControl("name_prog")shumora As DropDownList = prev.FindControl("count_prog")sana As String = Now.Date.Day & "/" & Now.Date.Month & "/" & Now.Date.Yearnarkh As DropDownList = prev.FindControl("narkh")summa As Integer= Val(narkh.SelectedValue) * Val(shumora.SelectedValue)sql_query As String = ""_query = "insert into sabad(name_product,miqdor,sana,id_user,narkh,summa) values ('" & nom.SelectedValue & "','" & shumora.SelectedValue & "', '" & sana & "','" & Session("id_user") & "', " & narkh.SelectedValue & ", " & summa & ")".InsertCommand = sql_query.Insert().Redirect("../users/user.aspx?sah=bought").Redirect("../default.aspx?sah=error")IfSubClass

Листинг 5.3 Код страницы userSystem.Data.OleDbSystem.DataClass users_userSystem.Web.UI.PageconnectionString As Stringcon_access As OleDbConnectioncmd_access As OleDbCommandreader_access As OleDbDataReaderSub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.LoadSession("id_user") <> "" ThenRequest("sah") = "2" Then.ActiveViewIndex = 1.Visible = True.Visible = Truei = 1 To 100_prog.Items.Add(i)query_sql As String = "SELECT * FROM product where status=1"= "Provider=Microsoft.Jet.Oledb.4.0;Data Source=C:\Inetpub\wwwroot\www.softkey.tj\data\base.mdb"_access = New OleDbConnection(connectionString)_access.Open()_access = New OleDbCommand(query_sql, con_access)_access = cmd_access.ExecuteReader()reader_access.HasRows = True Thencounter1 As Integer = 0_2.Text = "<table><tr>"While reader_access.Read()_prog.Items.Add(reader_access(1).ToString()).Items.Add(reader_access(5).ToString())_2.Text = label_2.Text & "<td>"_2.Text = label_2.Text & "<table border=1>Войдите в систему<br /></h3>")Ifquery_sql1 As String = "SELECT * FROM users where id=" & Session("id_user")_sql1 = "SELECT * FROM users where id=" & Session("id_user")= "Provider=Microsoft.Jet.Oledb.4.0;Data Source=C:\Inetpub\wwwroot\www.softkey.tj\data\base.mdb"_access = New OleDbConnection(connectionString)_access.Open()_access = New OleDbCommand(query_sql1, con_access)_access = cmd_access.ExecuteReader()reader_access.HasRows = True Then_access.Read()Session("posledniy_vhod") <> 0 Then.Text = "Добро пожаловать " & reader_access(1).ToString & " " & reader_access(2).ToString & "<br/>" & "Ваш последный визит: " & Session("posledniy_vizit") & "<br/>" & "Вы посещали: " & reader_access(12).ToString & "!"Session("posledniy_vhod") = 0 Then.Text = "Добро пожаловать " & reader_access(1).ToString & " " & reader_access(2).ToString & "<br/>" & "Вы заходите в сайт первый раз!" & "<br/>" & "Вы посещали: " & reader_access(12).ToString & "!".Text = reader_access(1).ToString & " " & reader_access(2).ToStringIf_access.Close()_access.Close()IfSubSub btnsearch_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnsearch.Clicksearchtxt.Text <> "" Then.ActiveViewIndex = 9connectionString As String = ""query_sql As String = "SELECT * FROM product where nom='" & searchtxt.Text & "'"= "Provider=Microsoft.Jet.Oledb.4.0;Data Source=C:\Inetpub\wwwroot\www.softkey.tj\data\base.mdb"_access = New OleDbConnection(connectionString)_access.Open()_access = New OleDbCommand(query_sql, con_access)_access = cmd_access.ExecuteReader()reader_access.HasRows = True Thencounter1 As Integer = 0.Text = "<table><tr>"While reader_access.Read().Text = lblsearch.Text & "<td>".Text = lblsearch.Text & "<table border=1>Результат поиска: Найдено " & counter1.ToString & " - программ(ы)"_access.Close()_access.Close()

lblerror.Text = "К сожалению ничего не найдено ".Text = ""If.Text = "К сожалению ничего не найдено "

End IfSubClass

6. ПРОВЕРКА ВХОДЯЩЕЙ ИНФОРМАЦИИ ДЛЯ WEB-САЙТА

В этой главе расматриваются все действия совершенные с базой данных Ms Access. Проверка входа является одиним из важнейших задач при программировании и является одним из способов защиты Web-приложения. На правой стороне панели расположена форма входа. Лицо, прошедшее регистрацию имеет возможность при помощи своего логина и пароля войти в систему (при условии разрешения администратора сайта).

После написания логина и пароля на базу отправляется запрос и там после проверки, определяется возможность доступа пользователя. Например, в базе зарегистрированных пользователей имеется Хонкелдиев с логином «Azik» и паролем «aziz123». Однако администратор на данный момент не дал разрешения пользователю войти в систему. На листинге 6.1 показан код проверки зарегистрироаванных и незарегистрироаванных пользователей.

Листинг 6.1 Код проверки формы входа

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Loadprevpage As Page = PreviousPageprevpage.IsPostBack Thentxtlogin As TextBox = prevpage.FindControl("txtlogin12")txtparol As TextBox = prevpage.FindControl("txtpassword12")txtlogin.Text = "Parviz" And txtparol.Text = "3678" Then.Redirect("admin/admin.aspx")Iftxtlogin.Text <> "" And txtparol.Text <> "" ThenconnectionString As String = ""query_sql As String = "SELECT * FROM users where login='" & txtlogin.Text & "' and parol='" & txtparol.Text & "'"= "Provider=Microsoft.Jet.Oledb.4.0;Data Source=C:\Inetpub\wwwroot\www.softkey.tj\data\base.mdb"_access = New OleDbConnection(connectionString)_access = New OleDbCommand(query_sql, con_access)_access.Open()_access = cmd_access.ExecuteReader()reader_access.HasRows = True Then_access.Read()reader_access(10).ToString = "1" Then.Redirect("admin/admin.aspx")reader_access(10).ToString = "2" Then("id_user") = reader_access(0).ToString("posledniy_vizit") = reader_access(13).ToString("posledniy_vhod") = reader_access(12)query_sql1 As String = "update users set vizit=vizit+1, posledniy_vhod='" & Date.Now & "' where id=" & Session("id_user")= "Provider=Microsoft.Jet.Oledb.4.0;Data Source=C:\Inetpub\wwwroot\www.softkey.tj\data\base.mdb"_access = New OleDbConnection(connectionString)_access = New OleDbCommand(query_sql1, con_access)_access.Open()_access = cmd_access.ExecuteReader()_access.Close()_access.Close().Redirect("users/user.aspx?sah=hello").Redirect("default.aspx?sah=error")If_access.Close()_access.Close().Redirect("default.aspx?sah=error1")If.Redirect("default.aspx?sah=error2")IfIfSub

Как видно из сомого кода при написании логина и пароля и нажатии кнопки «Вход» все даннии отправляются на другую страницу (Postback). Теперь на другой странице эти данные преобразуется в переменные и с помощью запроса отправляется на проверку. Даже если в базе этот пользователь имеется но его status в таблице равен «0» то вход в систему не разрешается. Это ошибка показана на рис.6.1:

Рис 6.1 Ошибка при входе

Теперь при замене status пользоватля с «0» на «2» имеется возможность входа на страницу пользователя (User).

Рис 6.2 Изменение значения поле status на базе


Рис 6.3 Вход на систему пользователя

7. СОЗДАНИЕ СТРАНИЦЫ АДМИНИСТРАТОРА (ADMIN)

Страница администратора (Admin) необходим для управления информацией, допуска и удаления, изменения и т.д.

В данном Web-приложении страница администратора создана с испоьзованием табличного дизайна. Страница администратора имеет возможность управлять пользователями.

Листинг 7.1 Html- код страницы

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="admin.aspx.vb" Inherits="admin_admin" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "#"601408.files/image013.gif">

Рис 7.1 Общий вид страницы администратора

8. УПРАВЛЕНИЕ ДАННЫМИ СО СТОРОНЫ АДМИНИСТРАТОРА

Управление данными является одной из первоочередных задач для администратора. На страницы администратора (Admin) имееются возможности управлять данными пользователей. Внутри страницы администратор может допустить или не допустить люблго пользователя в систему, а также изменять или удалять любую информацию на сайте. Страница соединена с базой данных Ms Access. При помощи AccessDataSource и GridView обеспечивается выполнения запросов и получения необходимого результата. При вводе параметров на объект AccessDataSource, на GridVew появляется возможность удалять изменять и дополнять данные. Ввод параметров показан на листине 8.1.

Листинг 8.1 Ввод параметров на AccessDataSoruce

<asp:AccessDataSource ID="AccessDataSource1" runat="server" DataFile="~/data/base.mdb"

SelectCommand="SELECT * FROM [users]" UpdateCommand="update users set nom=@nom,sname=@sname,mdname=@mdname,jins=@jins,sanai_tavallud=@sanai_tavallud,suroga=@suroga,pnumber=@pnumber, login=@login,parol=@parol, status=@status where id=@id"="delete from users where id=@id" InsertCommand="insert into users (nom,sname,mdname,jins,sanai_tavallud,suroga,pnumber,login,parol,status) values (@nom,@sname,@mdname,@jins,@sanai_tavallud,@suroga,@pnumber,@login,@parol,@status)">

<UpdateParameters>

<asp:Parameter Name="id" Type="int32" />

<asp:Parameter Name="nom" Type="String" />

<asp:Parameter Name="sname" Type="String" />

<asp:Parameter Name="mdname" Type="String" />

<asp:Parameter Name="jins" Type="String" />

<asp:Parameter Name="sanai_tavallud" Type="String" />

<asp:Parameter Name="suroga" Type="String" />

<asp:Parameter Name="pnumber" Type="String" />

<asp:Parameter Name="login" Type="String" />

<asp:Parameter Name="parol" Type="String" />

<asp:Parameter Name="status" Type="Int32" />

</UpdateParameters>

<DeleteParameters>

<asp:Parameter Name="id" Type="int32" />

</DeleteParameters>

<InsertParameters>

<asp:Parameter Name="nom" Type="String" />

<asp:Parameter Name="sname" Type="String" />

<asp:Parameter Name="mdname" Type="String" />

<asp:Parameter Name="jins" Type="String" />

<asp:Parameter Name="sanai_tavallud" Type="String" />

<asp:Parameter Name="suroga" Type="String" />

<asp:Parameter Name="pnumber" Type="String" />

<asp:Parameter Name="login" Type="String" />

<asp:Parameter Name="parol" Type="String" />

<asp:Parameter Name="status" Type="Int32" />

</InsertParameters>

</asp:AccessDataSource>

Теперь для проверки, изменим какую либо инфомацию пользователя, которая находится в базе данных.

Листинг 8.2 Код VB для написания запроса изменения.

Protected Sub tagir_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles tagir.ClickId_update.Text <> "" And fname.Text <> "" And update_field.Text <> "" Then.UpdateCommand = "update users set " & fname.Text & "='" & update_field.Text & "' where id =" & Id_update.Text.Update()_Id.Visible = False_field.Visible = False_txt.Visible = False_update.Visible = False_update.Text = "".Text = ""_field.Text = "".Visible = False_field.Visible = False.Visible = FalseIfSub

В этом коде при нажатии кнопки «Изменение» , данные задаными параметрами подвергаются изменению.

Рис 8.1 Внесение изменений данных пользователя

После нажатии кнопки «OK» столбец c названием status принмает значение «0» , то есть пользователю недаётся возможность входа на страницу «User».

Рис 8.2 Результаты изменения статуса

Теперь рассмотрим программный код управления, который показан на листинге 8.3:

Листинг 8.3 Код страницы

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Loadpage As String= Request.QueryString("sah")page = "1" Then.ActiveViewIndex = 0.SelectCommand = "Select * from users"page = "2" Then.ActiveViewIndex = 1page = "3" Then.ActiveViewIndex = 2page = "4" Then.ActiveViewIndex = 3

End IfSub

В этом коде (Листинг 8.2) , при открытии страницы, нажатии кнопки которая имеет параметр QueryString, появляется вся информация пользователя.

ЗАКЛЮЧЕНИЕ

В результате проделанной работы я углубил свои знания в создании динамического сайта в технологии разработки Internet-приложений и улучшил свои навыки по программе Visual Studio.

В данной курсовой работе использованы языки VBScript или JavaScript (JScript) и VB.net.ASP, что позволило улучшить свои знания в этих языках.

В процессе выполнения данной работы были создано Web-приложение, рассмотрена структура формы регистрации, создана страница пользователя, проведена проверка входа в Web-приложение, управление данными со стороны администратора и т.д. Результаты этого приведены в отчете о работе. Курсовая работа иллюстирована рисунками в количестве 15 штук. Процсесс прогроммирования показано на листингах количество 13 штук.

Автор данной работы углубил свои знания по теме «Интернет-магазин програмнного обеспечения», получил большое количество сведений о создание динамических Web-страниц, научился использовать их в практическом программировании при решении задач разной степени сложности.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1.Марко Беллиньясо. Разработка Web-приложений в среде ASP.NET. 2007г. - 640 с.

. Д. Рейли. Создание приложений ASP.NET. 2002, 260 с.

3. Matthew MacDonald, Mario Szpuszta. ASP.net in C# 2008. Second Edition.

. Абрамов и др. Задачи по программированию. М.:Наука, Гл.ред.

физ.-мат. лит.1988-2241.

. Златопольский Д.М. Сборник задач по программированию -

СПб.: БХВ-Петербург, 2007. - 240 с

программированию - Ростов-на-Дону, РГУ, 2007. - 156 с.

. Юркин А.Г. Задачник по программированию. - Москва, 2002-120с.

. Зиборов В.В. Visual Basic 2010 на примерах. - СПб.: БХВ-

Петербург, 2010. - 336с.

9. Дейтел Х.М., Дейтел П.Дж. Как программировать для Internet &. Пер. с англ. - М.: ООО «Бином-Пресс», 2002 г. - 1178 с.

. Марко Беллиньясо. Разработка Web-приложений в среде ASP.NET.

г. - 640 с.

. Д. Рейли. Создание приложений ASP.NET. 2002, 260 с.

Похожие работы на - Создание Web-сайта 'Интернет-магазин программного обеспечения'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!