Създаване на сайт с Dreamweaver MX 2004, PHP и MySQL , Урок 2.1

За да опростите приложението, ще създадете темплейт, който можете да използвате за администраторската секция. С изключение на навигационното меню, новата темплейт страница е подобна на тази която вече използваме.


Изграждане на темплейт за административната секция

За да опростите приложението, ще създадете темплейт, който можете да използвате за администраторската секция. С изключение на навигационното меню, новата темплейт страница е подобна на тази която вече използваме.

Отворете blgtemplate.dwt.php от папка Templates
Изберете опцията Save As Template от менюто File
В показания конфигурационен прозорец, въведете admintemplate, като име на новия темплейт и натиснете Save.


фиг.10. Диалог.джам Save As Template

Изтрийте съдържанието на лявата клетка и на негово място поставете таблица с 4 реда, 1 колона и width 100%.
На всеки ред от тази таблица , напишете следните редове и направете да сочат към:
Administration section - името на менюто
Manage topics - да сочи към (линк към ) list_top.php.
Manage articles - да сочи към (линк към ) list_art.php.
Logout - ще приложите специално поведение ( behavior ) към този линк малко по-късно.
Навигационното меню за админ. секция би трябвало да изглежда като:



фиг.9 навигационно меню за админ.секцията

Забележка: Няма нужда да създавате редактируем регион за менюто. То остава неизменно във всички страници от администраторската секция.

Използвайте следните стъпки за да приложите CSS стиловете, които дефинирахте върху навигационното меню
Върху таг селектора, с дясно кликване върху тага <table> (съдържащ менюто на админ.секцията) изберете Set Class > nugget от изскочилото меню.
По подобен начин с дясно кликване върху тага <td> (съдържащ хедъра на менюто) изберете Set Class > nugheader.
Накрая, с дясно кликване върху всеки от <td> таговете (съдържащи елементите на менюто) изберете Set Class > nugbody. Повторете за всеки от трите <td> тага.
Запишете (save) темплейтната страница.
Забележка: Базирано на начина по който дефинирахте сайта, може би има нужда да модифицирате линка към CSS файла (blog.css) за да направите стиловете достъпни за прилагането им към текущия темплейт.

Темплейта за администраторската секция, съдържа rsTopics recordset-а, който е наследен от страницата blgtemplate.dwt.php. Изтрийте го, като селектирате rsTopics recordset във Bindings панела и кликнете бутона (-). Може да получите предупреждаващ прозорец, насочващ вниманието Ви върху факта, че изтритият код няма да бъде приложен върху страниците базирани на този темплейт. Вие все още не сте приложили темплейта към някоя от страниците. Кликнете Ok за да подминете предупреждението.

Логващата страница извършва идентификацията. Но както много добре знаете, все някой ще направи опит за достъп ( някои дори ще влезнат ) до админ.секцията, поставяйки байпас на логващата страница. За да се предпазите от това, ограничете достъпа до админ.страниците.

Ограничен достъп до страниците

Всички администраторски страници са базирани на един и същ темплейт - admintemplate. Най-лесният начин за ограничаване на достъпа до тези страници е прилагане на подходящ server behavior директно върху темплейта. Behavior автоматично се разпространява върху всички страници.

Отворете страницат admintemplate.dwt.php
В панела Server Behaviors , кликнете (+) бутона и изберете User Authentication > Restrict Access To Page.
В появилия се диал.прозорец Restrict Access To Page , изберете опцията Username, password, and access level


фиг.11. Диал.прозорец Restrict Access To Page

За да добавите ниво на достъп , кликнете бутона Define. Появява се диал.прозорец Define Access Levels
Кликнете бутона (+) и напишете admin.
Забележка: Трябва да сте сигурни, че сте въвели коректно имената за ниво на достъп. Те трябва да отговарят на полето level_usr от таблицата users_usr на базата данни. Dreamweaver не прави проверка за коректността на въведеното име спрямо това в базата данни. Ако промените стойността на админ.парола, въведете стойността за достъп, която използвате.



фиг.12. Диал.прозорец Define Access Levels

Кликнете Ok за да затворите диал.прозорец Define Access Levels
Във текстовото поле If access denied, go to: отидете до страницата login.php
Кликнете Ok за да затворите диал.прозорец Restrict Access To Page и за да приложите server behavior към темплейта.
Запишете темплейт страницата.
Създаване на Log Out (излизане)

Вие можете да се логнете в админ.секцията и да откажете достъп на останалите, но така също Вие имате нужда от сигурно излизане от админ.секцията и разрушаване на всички сесийни променливи, които биха могли да предоставят на някои неоторизиран достъп до админ.страниците.

Отворете страницата admintemplate.dwt.php
Изберете текста Logout и отворете панела Server Behaviors от панела Application
Кликнете бутона (+) и изберете User Authentication > Log Out User, както е показано на фиг.13.


фиг.13. Избор на Log Out User във панела Server Behaviors

Конфигурирайте диал.прозорец Log Out User, като на фиг.14.



фиг.14. Диал.прозорец Log Out User

Забележка: Убедете се, че index.php файла във текстовото поле "When done, go to" , е index.php файла от root папката на Вашия blog сайт и не е index.php страницата от админ.секцията на Вашия сайт.

Кликнете Ok.
Запишете(Save) темплейта и го ъплоудвайте на сървъра.
Забележка: За да може генерираните server behaviors да функционират правилно, опцията register_globals трябва да е disabled във конфигурационния файл php.ini . След PHP 4.2, по подразбиране register_globals е off.

Сега след като идентиф. процедури са настроени, можете да стартирате построяването на админ.страниците.

Забележка: Посетителите може би все още имат възможности да спечелят неоторизиран достъп до Вашите админ.страници, дори и след Вашето log out. Това е защото интернет браузърите кешират съдържанието на скоро посетените страници, като по този начин правят възможно, посетителите да получат достъп до забранени страници с натискане на бутона back. Единственото решение за избягване на този сценарий е да затворите браузъра след като извършите log out.

Промяна темплейта на страница

В Dreamweaver, можете лесно да промените визията на страницата с прилагане към нея на различен темплейт.

Ще направите това със страницата за публикуване на статии (admin/index.php).

Отворете admin/index.php и изберете Modify > Templates > Apply Template to Page
Изберете темплейта admintemplate от диал.прозорец Select Template, както е на фиг .15

фиг.15. Прилагане на темплейта admintemplate към страницата admin/index.php

Отметката я направихте, нали ?

Кликнете бутона Select , когато сте готови.
Когато разгледате страницата с браузъра, то...


фиг.16. Админската index.php страница

Продължава в Урок 2.2


/ Трябва да сте регистриран за да напишете коментар /