Разработка системы доступа к ресурсам образовательного веб-портала вуза
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
clude("tpl/".$_GET[page].".php");
// }
//else { @include("tpl/default.php");}
//скрипт для вывода логина авторизованного пользователя+ кнопки управления
include("R_output_login.php");
}($_GET[exit]) {@session_destroy(); unset($_GET[exit]); mysql_close($link); @Header("Location: R_auth.php");}
?>
Листинг скрипта R_output_login.php:
<?php
// Блок для вывода логина авторизованного пользователя( ВЫ: логин)
$qx1=mysql_query("SELECT * FROM students WHERE students_nick=".$login." AND students_password=".$upass." ");// добавить AND status=1 если будет проверка документов
$qx2=mysql_query("SELECT * FROM teachers WHERE teachers_nick=".$login." AND teachers_password=".$upass." ");// добавить AND status=1 если будет проверка документов
$qx3=mysql_query("SELECT * FROM metodist WHERE metodist_nick=".$login." AND metodist_password=".$upass." ");// добавить AND status=1 если будет проверка документов
if(mysql_num_rows($qx1)===1 OR mysql_num_rows($qx2)===1 OR mysql_num_rows($qx3)===1)
;;
}
Листинг скрипта R_gut_acl.php:
<?php
// Путь к файлам с классами Zendа
set_include_path(library);
// Подключаем необходимые классы_once Zend/Acl.php;_once Zend/Acl/Role.php;_once Zend/Acl/Resource.php;
// Создание списка контроля доступа ACL (объект Zend_Acl)
$acl = new Zend_Acl();
// ДОБАВЛЕНИЕ ПОЛЬЗОВАТЕЛЕЙ(РОЛЕЙ)
// Выполним добавление ГРУПП пользователей
//ГРУППА действующих(реальных) пользователей
$acl->addRole(new Zend_Acl_Role(users_group))
//Подгруппа учащиеся=group_std
>addRole(new Zend_Acl_Role(group_std), users_group)
//Подгруппа сотрудники=group_sotrud
>addRole(new Zend_Acl_Role(group_sotrud),users_group);
//ГРУППА возможных(потенциальных) пользователей
$acl->addRole(new Zend_Acl_Role(pt_users_group))
//подгруппа потенциальные учащиеся=pt_group_std
->addRole(new Zend_Acl_Role(pt_group_std), pt_users_group)
//подгруппа потенциальные сотрудники=pt_group_sotrud
->addRole(new Zend_Acl_Role(pt_group_sotrud), pt_users_group);
// Добавление пользователей без наследования прав
// пользователь ГОСТЬ
$acl->addRole(new Zend_Acl_Role(guest))
// АДМИНИСТРАТОР web-портала
>addRole(new Zend_Acl_Role(admin))
// Добавление ПОДГРУПП пользователей с наследованием прав от 3-х категорий
//Подгруппы действующих(реальных) пользователей:
//Подгруппа группы сотрудники МЕТОДИСТ=metodist
->addRole(new Zend_Acl_Role(metodist),array(guest,users_group, group_sotrud ))
//Подгруппа группы сотрудники преподаватель=prepodavatel
>addRole(new Zend_Acl_Role(prepodavatel), array(guest,users_group, group_sotrud ))
//Подгруппа группы сотрудники администрация(административная должность)=administration
->addRole(new Zend_Acl_Role(administration), array(guest,users_group, group_sotrud ))
//Подгруппа группы учащиеся СТУДЕНТ=student
>addRole(new Zend_Acl_Role(student),array(guest,users_group, group_std ))
//Подгруппа группы учащиеся АСПИРАНТ=aspirant
>addRole(new Zend_Acl_Role(aspirant), array(guest,users_group, group_std ))
//Подгруппа группы учащиеся РОДИТЕЛИ=roditeli :-)
->addRole(new Zend_Acl_Role(roditeli), array(guest,users_group, group_std ))
//Подгруппы возможных(потенциальных) пользователей (аналогично предыдущему блоку)
->addRole(new Zend_Acl_Role(pt_metodist),array(guest,pt_users_group, pt_group_sotrud ))
>addRole(new Zend_Acl_Role(pt_prepodavatel), array(guest,pt_users_group, pt_group_sotrud ))
>addRole(new Zend_Acl_Role(pt_administration), array(guest,pt_users_group, pt_group_sotrud ))
>addRole(new Zend_Acl_Role(pt_student),array(guest,pt_users_group, pt_group_std ))
>addRole(new Zend_Acl_Role(pt_aspirant), array(guest,pt_users_group, pt_group_std ))
>addRole(new Zend_Acl_Role(pt_roditeli), array(guest,pt_users_group, pt_group_std ));
// ДОБАВЛЕНИЕ РЕСУРСОВ
// defaultModule- МОДУЛЬ ПО УМОЛЧАНИЮ
$acl->add(new Zend_Acl_Resource(defaultModule));
// UserController (общие функции)
$acl->add(new Zend_Acl_Resource(UserController), defaultModule);
$acl->add(new Zend_Acl_Resource(registerAction), UserController);
$acl->add(new Zend_Acl_Resource(loginAction) , UserController);
$acl->add(new Zend_Acl_Resource(logoutAction) , UserController);
// SiteController (страницы-разделы портала)
$acl->add(new Zend_Acl_Resource(SiteController), defaultModule);
$acl->add(new Zend_Acl_Resource(news) , SiteController);
$acl->add(new Zend_Acl_Resource(about) , SiteController);
$acl->add(new Zend_Acl_Resource(history) , SiteController);
$acl->add(new Zend_Acl_Resource(structure), SiteController);
$acl->add(new Zend_Acl_Resource(documrnts), SiteController);
$acl->add(new Zend_Acl_Resource(education), SiteController);
// UzoneController (личные кабинеты)
$acl->add(new Zend_Acl_Resource(UzoneController), defaultModule);
$acl->add(new Zend_Acl_Resource(cabinet), UzoneController);
// uchet_uspevModule- МОДУЛЬ УЧЕТА УСПЕВАЕМОСТИ
$acl->add(new Zend_Acl_Resource(uchet_uspevModule));
// SpecController (должностные функции)
$acl->add(new Zend_Acl_Resource(SpecController), uchet_uspevModule);
$acl->add(new Zend_Acl_Resource(redakt_ocenki_metodist) , SpecController);
$acl->add(new Zend_Acl_Resource(obzor_ocenki_prep) , SpecController);
$acl->add(new Zend_Acl_Resource(ocenki_stud) , SpecController);
//РАСПРЕДЕЛЕНИЕ РОЛЕЙ
$role=guest;(isset($_SESSION[SID]) )
{
//**подключить БД учета успев (в которой хранятся таблицы действующих(реальных) пользователей)
$db_uni=mysql_select_db(university8, $link) or die (Can\t use university : . mysql_error());(!$db_uni)
{("");
}
{"";
}
$q01 = @mysql_query("SELECT * FROM metodist WHERE metodist_nick=".$_SESSION[user]."AND m