Сайт создан по материалам книги Г. Бучека "Учебный курс по ASP.NET".
Москва: BHV, 2002.
Создатель сайта-выпускник курсов web-дизайнеров Сафоновского Колледжа Информационных Технологий Максим Котликов |
|||||||||||||||||
Проект РегистрацияПриложение Регистрация обеспечивает доступ посетителей к узлу после ввода имени пользователя и пароля. Если приложение подтверждает наличие их в базе данных, пользователь получает доступ к Web-узлу. Используя средства настройки приложения, администратор задает количество неудачных попыток регистрации, которые посетитель может сделать, прежде чем ему будет отказано в таковой вообще. В приложении также имеется возможность создания учетной записи для нового посетителя. В случае успешной регистрации посетитель будет идентифицирован и сможет персонализировать узел в соответствии со своими потребностями. Такой подход к обеспечению персонализации узла для пользователя зачастую бывает более предпочтительным, нежели использование файлов cookie на его компьютере, так как поддержка этих файлов может быть отключена или не обеспечиваться. Кроме того, посетитель может связываться с узлом не со своего компьютера. Описание проектаКогда посетитель обращается к узлу, его взору предстает страница Регистрация, где необходимо ввести свое имя пользователя и пароль. Для того чтобы посетитель обязательно заполнил оба поля, здесь используется элемент Requi-redFieldValidator. Если хотя бы в одно поле не будет введено значение, на экране появится сообщение об ошибке. После того как все данные введены, посетитель нажимает кнопку ОК. Если были введены недействительное имя пользователя или неверный пароль, появляется соответствующее сообщение. Посредством конфигурационного файла администратор задает количество возможных попыток регистрации. В случае окончательного отказа в таковой посетитель попадает на страницу Отказ в регистрации, после чего попытаться зарегистрироваться он сможет лишь в новом сеансе.
Если посетитель вводит действительное имя пользователя и верный пароль, он попадает на страницу Успешная регистрация. Эта и все другие страницы узла доступны лишь после успешной регистрации посетителя, что удостоверяется специальной переменной сеанса. Если зарегистрироваться не удалось, посетитель возвращается обратно на страницу Регистрация. Такой порядок действий предотвращает доступ посетителя к страницам узла без предварительной регистрации.
На странице Регистрация имеется ссылка на страницу Новый пользователь, которая появляется только в том случае, если это предписано в файле конфигурации. Другими словами, администратор может управлять возможностью регистрации новых посетителей, изменяя переменную Application. В нашем примере она задана таким образом, чтобы посетитель при щелчке на ссылке попадал на страницу Новый пользователь.
Посетитель должен заполнить каждое поле, повторно ввести пароль (иначе страница не будет обработана) и нажать кнопку ОК. На рис. вы видите сообщение об ошибке, из которого следует, что пользователь с указанным именем уже существует. В коде проверяется, не используется ли еще кем-нибудь имя пользователя, введенное только что посетителем. Если все в порядке, данные нового посетителя сохраняются в базе данных, а он сам переходит на страницу Успешная регистрация. В противном случае посетителю будет предложено ввести другое имя.
База данных проектаБаза данных, используемая в проекте Регистрация, содержит таблицу Users, в которой хранится информация о посетителях узла. Описание полей этой таблицы приведено в табл.
Код проектаУзел Регистрация состоит из ASP.NET-страниц и конфигурационного файла Glo-bal.asax. Поскольку используется файл Global.asax, то все файлы, находящиеся в папке проекта, следует пометить средствами Internet Information Services как единое приложение. Первый блок кода этого конфигурационного файла активизируется при запуске приложения:
Application("AllowAdd") = True Application("MaxTries") = 3 End Sub
Вторая переменная задает возможное количество попыток посетителя зарегистрироваться, прежде чем он будет отправлен на страницу Отказ в регистрации:
Session("NumTries") = О End Sub
|
|||||||||||||||||