Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсач_Едос_ось_це_здавать.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
925 Кб
Скачать
☆

4.2. Основні модулі, алгоритми

При створенні проекту було використано наступні модулі:

  1. Модуль відповідання на запитання:

Рис. 4.2.1 – Модуль відповідання на запитання.

Рис. 4.2.2 – Модуль отримання результатів відповідей.

Для роботи бази даних з проектом було використано наступний алгоритм: <%@ Page Language=VB Debug=true %>

<%@ Import Namespace="System.Data" %>

<%@ Import Namespace="System.Data.OLEDB" %>

<script runat=server>

Sub Page_Load(ByVal Sender as Object, ByVal E as EventArgs)

Dim DBConn as OleDbConnection

Dim DBCommand As OleDbDataAdapter

Dim DSPageData as New DataSet

Dim I as Integer

Dim J as Integer

Dim TempID as String

Application("SurveyID") = 2

' Application("SurveyID") = 1

DBConn = New OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;" _

& "DATA SOURCE=" _

& Server.MapPath("/INetBook/C3/Survey/" _

& "Access/C3Survey.mdb;"))

DBCommand = New OleDbDataAdapter _

("Select SurveyName, SurveyInstructions " _

& "From Surveys Where SurveyID = " _

& Application("SurveyID"), DBConn)

DBCommand.Fill(DSPageData, _

"SurveyInfo")

lblTitle.Text = "<CENTER>" _

& DSPageData.Tables("SurveyInfo"). _

Rows(0).Item("SurveyName") & "</CENTER>"

lblMessage.Text = DSPageData.Tables("SurveyInfo"). _

Rows(0).Item("SurveyInstructions")

DBCommand = New OleDbDataAdapter _

("Select SurveyQuestionID, SurveyQuestionLong " _

& "From SurveyQuestions Where SurveyID = " _

& Application("SurveyID"), DBConn)

DBCommand.Fill(DSPageData, _

"SurveyQuestions")

For I = 0 to DSPageData.Tables("SurveyQuestions"). _

Rows.Count - 1

Dim lcHTML = New LiteralControl

lcHTML.Text = DSPageData.Tables("SurveyQuestions"). _

Rows(I).Item("SurveyQuestionLong") & "<BR>"

pnlQuestions.Controls.Add(lcHTML)

Dim MyDDL = New DropDownList

TempID = DSPageData.Tables("SurveyQuestions"). _

Rows(I).Item("SurveyQuestionID")

MyDDL.ID = "Q" & TempID

DBCommand = New OleDbDataAdapter _

("Select SurveyAnswer " _

& "From SurveyAnswers Where SurveyQuestionID = " _

& TempID, DBConn)

DBCommand.Fill(DSPageData, _

TempID)

For J = 0 to DSPageData.Tables(TempID). _

Rows.Count - 1

Dim MyItem = New ListItem

MyItem.Text = DSPageData.Tables(TempID). _

Rows(J).Item("SurveyAnswer")

MyDDL.Items.Add(MyItem)

Next

pnlQuestions.Controls.Add(MyDDL)

lcHTML = New LiteralControl

lcHTML.Text = "<BR><BR>"

pnlQuestions.Controls.Add(lcHTML)

Next

End Sub

Sub SubmitBtn_Click(Sender As Object, E As EventArgs)

Dim DBConn as OleDbConnection

Dim DBInsert As New OleDbCommand

Dim DBCommand As OleDbDataAdapter

Dim DSPageData as New DataSet

Dim MyControl as Control

Dim MyDDL as DropDownList

DBConn = New OleDbConnection("Provider=sqloledb;" _

& "server=bhv2k;" _

& "Initial Catalog=INETC3;" _

& "User Id=sa;" _

& "Password=bhv;")

DBInsert.Connection = DBConn

' DBInsert.Connection.Open

For Each MyControl in pnlQuestions.Controls

If MyControl.GetType().FullName = _

"System.Web.UI.WebControls.DropDownList" Then

MyDDL = MyControl

DBInsert.CommandText = "Insert Into SurveyResponses " _

& "(SurveyQuestionID, SurveyResponse) " _

& "values (" _

& Mid(MyDDL.ID, 2) & ", " _

& "'" _

& Replace(MyDDL.SelectedItem.Text, "'", "''") _

& "')"

' DBInsert.ExecuteNonQuery()

End If

Next

DBCommand = New OleDbDataAdapter _

("Select SurveyResponse " _

& "From Surveys Where SurveyID = " _

& Application("SurveyID"), DBConn)

' DBCommand.Fill(DSPageData, _

' "SurveyInfo")

'lblMessage.Text = DSPageData.Tables("SurveyInfo"). _

' Rows(0).Item("SurveyResponse")

pnlQuestions.Visible = False

butOK.Visible = False

'ssssssssssssssssssssssssssssssssssssssssss

If butOK.Visible = False Then

Application("SurveyID") = 3

DBConn = New OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;" _

& "DATA SOURCE=" _

& Server.MapPath("/INetBook/C3/Survey/" _

& "Access/C3Survey.mdb;"))

DBCommand = New OleDbDataAdapter _

("Select SurveyName, SurveyInstructions " _

& "From Surveys Where SurveyID = " _

& Application("SurveyID"), DBConn)

DBCommand.Fill(DSPageData, _

"SurveyInfo")

lblTitle.Text = "<CENTER>" _

& DSPageData.Tables("SurveyInfo"). _

Rows(0).Item("SurveyName") & "</CENTER>"

lblMessage.Text = DSPageData.Tables("SurveyInfo"). _

Rows(0).Item("SurveyInstructions")

End If

End Sub