Страницы общего доступа. Страница списка категорий.
Страницы общего доступа предназначены для обычных посетителей сайта. Как правило, они создаются после административных страниц; в этом случае вы можете использовать последние как образцы для создания "обычных" страниц. В самом деле, "обычные" страницы часто в общих чертах повторяют административные, и вам остается только удалить некоторые возможности, не нужные обычным посетителям. Так мы и сделаем.
Страница списка категорий
Давайте сделаем так, чтобы при входе на сайт посетитель мог выбрать категорию высказываний (зря мы их, что ли, вводили!). А для этого нам понадобится создать страницу списка категорий, чем мы сейчас и займемся.
Создадим новую серверную страницу ASP и сохраним ее в файле Categories.asp в корневой папке сайта. И остановимся, чтобы немного подумать.
Что нам нужно? Правильно, вывести список категорий. А еще? Нам необходимо, чтобы название каждой категории в этом списке представляло собой гиперссылку. Щелкнув по ней, посетитель сайта попадет на другую страницу, на которой будут перечислены все высказывания этой категории.
Как это сделать? Очень просто: надо воспользоваться поведением GO TO Detail Page, выполняющим переход на связанную страницу.
Создадим новый набор записей под именем categories. Задайте выборку всех записей таблицы categories. После этого задайте сортировку записей по полю Name, для чего выберите это поле в раскрывающемся списке Sort диалогового окна Recordset (см. рис. 17.15). Раскрывающийся список, расположенный правее, позволит вам задать порядок сортировки записей: по возрастанию (пункт Ascending) или по убыванию (пункт Descending).
Напишите на странице Categories.asp какой-либо пояснительный текст, если хотите. После этого создайте текстовый абзац и поместите в него динамический текст, связанный с полем Name набора данных categories. Далее выделите этот текст и создайте "вокруг" него повторяющуюся область, привязав ее к созданному нами набору данных categories. Пусть она отображает сразу все записи набора – их не так много, чтобы городить огород с навигатором и строкой статуса.
Собственно, на этом создание страницы списка категорий почти закончено. Осталось только добавить поведение, реализующее переход на страницу со списком высказываний, относящихся к выбранной категории.
Чтобы нам самим было проще в дальнейшем, давайте введем еще пару терминов. Назовем страницу, отображающую список категорий, первичной, а страницу, отображающую список высказываний, относящихся к выбранной категории, – вторичной. В литературе встречаются другие названия таких страниц, но мы будем использовать эти.
Выделите содержимое повторяющейся области, а именно динамический текст. После этого выберите в меню серверных поведений панели Server Behaviors пункт Go To Detail Page. На экране появится диалоговое окно Go То Detail Page.
В поле ввода Detail Page введите интернет-адрес вторичной страницы, отображающей список высказываний. Вы также можете щелкнуть по кнопке Browse и выбрать нужную страницу в диалоговом окне Select File. Мы создадим эту страницу позднее и назовем ее так же, как уже созданную административную страницу списка высказываний, – Sentences.asp, только сохраним в корневой папке сайта.
В поле ввода Pass URL Parameter введите имя параметра, передаваемого из первичной страницы во вторичную. По умолчанию Dreamweaver подставляет в него имя первого поля ввода набора записей, и, если это то поле, которое вам нужно, менять его не стоит.
В раскрывающемся списке Recordset выбирается набор записей, чье поле используется для связи первичной и вторичной страниц. Само же это поле выбирается в раскрывающемся списке Column. В нашем случае это набор записей categories и его поле ID.
Теперь остается задать метод передачи параметра из первичной страницы во вторичную. Это делается с помощью группы флажков Pass Existing Parameters. Флажок URL Parameters задает использование метода GET, а флажок Form Parameters – метода POST. Нам лучше выбрать метод GET, т. к. объем передаваемых данных очень невелик, а хранить их в секрете необязательно.
Введя все данные, нажмите кнопку ОК. После этого Dreamweaver преобразует выделенный фрагмент страницы в гиперссылку, выполняющую переход на вторичную страницу. И, разумеется, создаст поведение GO TO Detail Page.
Теперь нужно ограничить доступ к этой странице. Для этого, как вы помните, нужно создать поведение Restrict Access TO Page. Задайте разграничение доступа по имени и паролю (переключатель Username and Password диалогового окна Restrict Access To Page). Таким образом, на эту страницу смогут попасть все зарегистрированные посетители вне зависимости от прав доступа.
На этом создание страницы списка категорий можно считать законченным. Наш следующий шаг – создание страницы списка высказываний.