userprivilege.php
Сценарий отвечает за обработку действий пользователя,
касающихся назначения полномочий пользователям. В него входят следующие функции (табл. 26.9):
Проектирование уровня представления
Эта система предназначена для интеграции с другими приложениями, поэтому, проектируя интерфейс пользователя, мы ставим себе задачу сделать его возможно более простым. Мы постараемся представить только необходимые элементы формы без всяких излишеств, которые пришлось бы убирать конечным разработчикам.
Для кода на стороне клиента будет применен очень упрощенный XHTML. В результате использования только основных элементов форм мы избегаем проблем со старыми броузерами, а кодируя на действительном (valid) XHTML, гарантируем совместимость, которая позволит избежать проблем тем разработчикам, которые хотят иметь на своих сайтах только действительные документы XML.
Два основных вида деятельности пользователей в нашей системе - это определение полномочий в системе и назначение полномочий пользователям. В первой задаче участвуют два экрана. Первый экран представляет пользователя и список всех имеющихся у него полномочий. Пользователь может выбрать между отсутствием каких-либо действий («Exit»), выбором полномочия и созданием нового. Каждый из двух последних вариантов приводит пользователя ко второму экрану. Здесь пользователь может отказаться от действий, изменить описание полномочия или удалить полномочие. По завершении действия пользователь должен быть возвращен к экрану выбора.
В задачу назначения полномочий тоже вовлечено два экрана. Первый экран показывает список всех имеющихся пользователей. Можно отказаться от действий или выбрать пользователя. Если выбран пользователь, отображается второй экран. На этом экране перечисляются все имеющиеся в системе полномочия с отметкой тех, которые назначены выбранному пользователю. Пользователь может изменить установки или покинуть экран, не сделав никаких изменений. В любом случае пользователь возвращается к первому экрану.
Кодирование приложения
Руководствуясь этим проектом, мы можем теперь написать код программы.
Код для базы данных
Начать можно со сценария для создания базы Файл будет называть
ся userprivilege. sql:
8 userprivilege.sql
CREATE DATABASE IF NOT EXISTS UserPrivilege;
USE UserPrivilege;
CREATE: TABLE User (
username VARCHAR (10) NOT NULL PRIMARY KEY, fullname VARCHAR (50)
CREATE TABLE Privilege (
priv^id INT (11) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, description VARCHAR (50)