Глава 8. Реализация страницы администратора
. На данный момент основные функции БЛОГА Doking реализованы. Однако администратор обладает высшей «властью жизни и смерти» строго управлять заметками и ответами, публикуемыми пользователями, чтобы предотвратить размещение пользователями вредоносной информации в БЛОГе Докинга.
(1) Создайте новую пустую динамическую страницу APS.NET VB gllogin.aspx, вставьте форму glfrm, а затем вставьте таблицу. Настройки показаны на рисунке 8-1.
Рис. 8-1. Дизайн страницы gllogin
(2) Пусть идентификатор текстового поля, соответствующего администратору, будет GLY, а идентификатор текстового поля, соответствующего паролю, будет GLPASS.
(3) Добавьте набор данных gly и установите для него фильтр, как показано на рисунке 8-2.
Рисунок 8-2 Добавление набора данных gly
(4) Нажмите кнопку «Дополнительно» и добавьте параметр @GLPASS, как показано на рисунке 8-3.
Рис. 8-3. Добавление параметра @GLPASS
(5) В расширенном диалоговом окне набора данных gly измените команду SQL на ту, которая показана на рис. 8-4.
Рисунок 8-4 Расширенное диалоговое окно набора данных gly
(6) Переключитесь в режим просмотра кода и вставьте код, показанный на рисунке 8-5, перед тегом <html>.
Рисунок 8-5. Вставьте код перед тегом <html>
(7) и сохраните gllogin.aspx.
Из предыдущего раздела вы можете видеть, что после успешного входа в систему администратор будет перенаправлен на домашнюю страницу БЛОГА Doking для управления учебными заметками. Однако в предыдущих главах index.aspx не имел функции удаления учебных заметок. В этом разделе к нему будет добавлена эта функциональность.
(1) В первую строку таблицы ztre вставьте метку asp Label1 с текстом: Удалить, как показано на рисунке 8-6.
Рисунок 8-6. Вставка метки asp Label1
(2) Щелкните правой кнопкой мыши, чтобы выбрать метку asp Label1, выберите «Редактировать метку» в контекстном меню, выберите «Информация о стиле» и установите для нее невидимый режим, как показано на рисунке 8-7.
Рис. 8-7 Сделайте метку asp Label1 невидимой
(3) Установите флажок под элементом управления формой и назовите его ZTID, а затем вставьте кнопку под элементом управления формой с идентификатором GLY. Результат показан на рисунке 8-8. .
Рисунок 8-8 В настройках (4) таблицы ztre
перейдите на вкладку [Свойства] на панели [Метка], разверните элемент «Общие» и щелкните динамические данные в элементе «значение», как показано на рисунке. 8-9.
Рисунок 8-9 Панель атрибутов метки ZTID
(5) Во всплывающем диалоговом окне «Динамические данные» выберите поле ZTID под набором данных Ztre и нажмите клавишу «ОК», как показано на рисунке 8-10.
Рисунок 8-10 Окно динамических данных
(6) Щелкните правой кнопкой мыши строку состояния и выберите <input#ZIID>, чтобы открыть окно быстрого редактирования метки, и добавьте код к ее метке:
style="visibility: <%# iif(session) ("GLY") <>nothing,"visible","hidden")%>" value="<%# Ztre.FieldValue("ZTID, Container) %>",
как показано темно-синим цветом на рисунке 8-11.
Рисунок 8-11 Быстрое редактирование тега <input#ZIID>
(7) Выберите кнопку GLY, щелкните правой кнопкой мыши строку состояния и выберите <input#GLY>, чтобы открыть окно быстрого редактирования тега, и добавьте код к его тегу. :
style="visibility: <% # iif(session("GLY")<>nothing,"visible","hidden")%>" value="<%# Ztre.FieldValue("ZTID", Container) %> (
8) Добавьте «Удалить запись» Поведение сервера, его настройки показаны на рисунке 8-12.
Рис. 8-12 Добавление поведения сервера «Удалить запись»
(9) Нажмите клавишу «ОК», чтобы завершить добавление поведения сервера «Удалить запись». Переключитесь в представление кода, чтобы найти исходный код поведения сервера «удалить запись», как показано в красном кружке на рисунке 8-13.
Рисунок 8-13 Исходный код поведения сервера «Удалить запись»
(10) Удалите коды в строках 5, 8, 12, 13 и 14, как показано на рисунке 8-2-8, и установите значение Debug в в строке 10 установите значение true. Измените ее на false и добавьте новое поведение: id="del1", как показано в красном кружке на рис. 8-14 после изменения.
Рисунок 8-14 Исходный код модифицированного поведения сервера del1 «удалить запись»
(11) Скопируйте код, показанный в красном кружке на рисунке 8-2-9, то есть скопируйте исходный код модифицированного «удаления записи». поведение сервера del1 и измените его. Вставьте его в соответствующее место и измените идентификатор на «del2», как показано на рис. 8-15.
Рис. 8-15. Добавление поведения сервера del2 «удаление записи»
(12) Вставьте код, показанный красным кружком на рис. 8-16, в событие page_load, инициируемое загрузкой страницы.
Рис. 8-16. Код, вставленный в событие page_load, инициируемое загрузкой страницы.
Принципы и методы управления ответами на примечания и управления примечаниями к исследованию одинаковы.
(1) Откройте index.aspx, скопируйте метку asp Label1, элемент управления ZTID формы и кнопку GLG, откройте hf.aspx, вставьте эти три элемента управления в положение, показанное на рисунке 8-17, и измените идентификатор элемента управления формы ZTID на HFID.
Рисунок 8-17. Вставка элемента управления в hf.aspx
(2) Установите флажок HFID, перейдите на вкладку [Свойства] на панели [Метка], разверните элемент «Общие» и нажмите «Динамические данные» в элементе «значение». Во всплывающем диалоговом окне «Динамические данные» выберите поле HFID под набором данных Hfre и нажмите клавишу «ОК», как показано на рисунке 8-18.
Рис. 8-18 Окно динамических данных
(3) Скопируйте «del1» в index.aspx, чтобы удалить исходный код, записывающий поведение службы, и вставьте его в hf.aspx.
(4) Вставьте код, показанный в красном кружке на рис. 8-19, в событие триггера загрузки страницы page_load на странице hf.aspx.
Рисунок 8-19. Вставка кода в событие триггера загрузки страницы h page_load
(5) Найдите исходный код формы yhplfrm и переместите его перед тегом формы ztre. Результат показан на рисунке 8-20.
Рис. 8-20 Перемещение метки формы yhplfrm
(6) Вставьте код, показанный в красном кружке на рис. 8-21, перед меткой Hftab формы.
Рисунок 8-21. Вставка кода перед тегом таблицы Hftab
(7) Переместите закрывающий тег формы yhplfrm </form> после тега таблицы ztre и вставьте код, показанный в красном кружке на рисунке 8-22, после тега таблицы Hftab.
Рисунок 8-22. Вставьте код после метки Hftab таблицы,
чтобы напомнить: существует также проблема выхода администратора из системы, которая оставляется на усмотрение читателя. Напоминаем, что просто установите для session("GLY") нулевое значение или пустую строку.