
Проект Закладки
Проект Регистрация
Проект Предпочтения
Код на странице содержит две процедуры. Первая процедура выполняется при загрузке страницы.
Sub Page_Load(ByVal Sender as Object, ByVal E as EventArgs)
If Application("AllowAdd") = True Then
IblNewUser.Text = "<A HREF=""./new_user.aspx""" _
& ">Новый пользователь,</А>"
End If .
If Session("NumTries") > Application("MaxTries") Then
Response.Redirect("./failed_login.aspx")
End If
End Sub
Вначале осуществляется проверка того, задана ли возможность ввода данных нового пользователя:
If Application("AllowAdd") = True Then
Если это так, ссылка на страницу Новый пользователь помещается в элемент Label:
IblNewUser.Text = "<A HREF=""./new_user.aspx""" _
& ">Новый пользователь,</А>"
Затем, если посетитель исчерпал все попытки регистрации:
If Session("NumTries") > Application("MaxTries") Then
он отправляется на страницу Отказ в регистрации:
Response.Redirect("./failed_login.aspx")
Вторая процедура выполняется при нажатии кнопки ОК. Процедура осуществляет попытку пользователя зарегистрироваться.
Sub SubmitBtn_Click(Sender As Object, E As EventArgs)
Dim DBConn as OleDbConnection
Dim DBCommand AS OleDbDataAdapter
Dim DSLogin as New DataSet
DBConn = New OleDbConnection("Provider=sqloledb;" _
& "server=localhost;" _
& "Initial Catalog=INETC12;" _
& "User Id=sa;"
& "Password=yourpassword;")
DBCommand = New OleDbDataAdapter _
("Select UserlD from Users Where " _
& "UserName = '" & txtUserName.Text _
& "' and Password = '" & txtPassword.Text _
& ""', DBConn)
.DBCommand.Fill(DSLogin, _
"Userlnfo")
If DSLogin.Tables("Userlnfo"). _
Rows.Count = 0 Then
Session("NumTries") = Session("NumTries") + 1
If Session("NumTries") >= _
Application("MaxTries") Then
Response.Redirect("./failed_login.aspx")
Else
IblMessage.Text = "Имя пользователя и пароль " _
& "не найдены. Введите их еще раз."
End If
Else
Session("UserlD") = DSLogin.Tables("Userlnfo"). _
Rows(O).Item("UserID")
Response.Redirect("./success_login.aspx")
End If
End Sub
Вначале в базе производится поиск имени пользователя и пароля, введенных посетителем в элементы управления TextBox:
DBCommand=- New OleDbDataAdapter _
("Select UserlD from Users Where " _
& "UserName= '" & txtUserName.Text _
& "' and Password= '" & txtPassword.Text _
& ""', DBCo-nn)
Результаты выполнения запроса помещаются в таблицу Userlnfo объекта DataSet:
DBConunand.Fill (DSLogin, _
"Userlnfo")
Теперь необходимо определить количество полученных записей:
If DSLogin.Tables("Userlnfo").
Rows.Count = 0 Then
Отсутствие записей означает, что имя пользователя и пароль не были найдены. В этом случае к значению переменной сеанса, хранящей количество выполненных попыток регистрации, добавляется единица:
Session("NumTries") = Session("NumTries") + 1
Затем осуществляется проверка того, не превысило ли число попыток посетителя зарегистрироваться их допустимое количество:
If Session("NumTries") >= _
Application("MaxTries") Then
|