• 社团管理系统网站(php+mysql)


    目 录
    摘 要 1
    Abstract 2
    1 系统概述 5
    1.1 毕业设计目的 5
    1.2 开发背景 5
    1.3 开发环境 6
    2 目的与任务 7
    2.1 目的 7
    2.2 任务 7
    3 系统功能结构设计 9
    3.1 登录功能 9
    3.2 首页 9
    3.3 社团信息功能 9
    3.4 社团成员功能 9
    3.5 社团活动功能 9
    3.6 个人信息功能 10
    3.7 职位信息功能 10
    3.8 注销功能 10
    4 系统数据库设计 11
    4.1 E-R模型 11
    4.2 数据库表结构 11
    5 系统实现 14
    5.1 index 14
    5.1 Framework 14
    5.2 View 14
    5.3 Controller 18
    5.4 Model 18
    6系统测试与性能分析 19
    6.1 测试计划 19
    6.2 系统测试 19
    6.2.1基础测试 19
    6.2.2 社团管理测试 20
    总 结 22
    参考文献 24
    致 谢 25
    3 系统功能结构设计
    3.1 登录功能
    用户通过用户名和密码进入系统并获得相应的权限。系统采用自动注册功能,用户进入了某社团(该社团管理员将该用户信息录入系统)后,即可用学号登录,密码默认为学号(若有用户的身份证信息更好,可以设身份证后6位为默认密码),相应的,若用户信息未被录入系统,则该用户无法登录。现实中有可能出现用户参加了两个社团,在一个社团身份是主席,而另一个社团身份是会员,因此用户权限会根据操作的社团发生变化。
    3.2 首页
    首页仅显示所有社团的大致信息。
    3.3 社团信息功能
    社团信息功能包括对社团和部门的增加删除修改和查询。在社团信息页面可选择社团,除教师用户外,其他用户均只能选择自己参加的社团。显示所选择社团以及其所有部门的所有详细信息,具有权限的即可对相应信息进行增加删除修改。
    3.4 社团成员功能
    社团成员功能包括对成员的增加删除修改和查询。在社团成员页面选择社团和部门,除教师用户外,其他用户均只能选择自己参加的社团,而除教师、主席、副主席外,其他用户均只能选择自己参加的部门。显示所选择部门的所有成员的详细信息,具有权限即可对相应信息进行增加删除修改。
    3.5 社团活动功能
    社团活动功能包括对活动的增加删除修改和查询。在社团活动页面可选择社团,除教师用户外,其他用户均只能选择自己参加的社团。显示所选择社团的所有活动的大致信息,教师、主席、副主席、部长、副部长均可查看活动详细信息和添加活动。并在详细信息页面可对该活动进行修改和删除操作。
    3.6 个人信息功能
    个人信息功能包括对个人信息的修改以及修改密码操作。在个人信息页面可显示所参加的社团部门的大致信息,以及在社团内的个人信息。考虑到若一个人参加了多个社团多个部门,那么在录入信息的时候可能会有冲突,因此设置每个部门录入的信息互不干扰,即成员表中,以(用户学号,部门id)为主键。因此在个人信息页面中,显示了所有参加的部门中的个人信息。
    3.7 职位信息功能
    职位信息仅教师用户进入,用于管理各职位的权限等级。权限值越低等级越高:教师-0、主席-2、副主席-4、部长-6、副部长-8、会员-10、干事-10。目的是为了方便日后添加新的职位。
    3.8 注销功能
    注销当前账号以登录其他账号。

    ";
    echo DS."
    "; echo ROOT."
    "; echo APP."
    "; echo FRAMEWORK."
    "; echo PLAT_PATH."
    "; echo CTRL_PATH."
    "; echo MODEL_PATH."
    "; echo VIEW_PATH."
    "; */ /* * PLAT=front * DS=\ * ROOT=F:\Programming\web\com\commllm\ * APP=F:\Programming\web\com\commllm\Application\ * FRAMEWORK=F:\Programming\web\com\commllm\Framework\ * PLAT_PATH=F:\Programming\web\com\commllm\Application\front\ * CTRL_PATH=F:\Programming\web\com\commllm\Application\front\Controller\ * MODEL_PATH=F:\Programming\web\com\commllm\Application\front\Model\ * VIEW_PATH=F:\Programming\web\com\commllm\Application\front\View\ */ function __autoload($class){ $base_class = array('TableFactory','BaseModel','ModelFactory','BaseController'); if(in_array( $class, $base_class)) { require FRAMEWORK . $class . '.class.php'; //加载基础模型类 } else if(substr($class, -5) == "Model") {//所需要的类的名字最后5个字符是"Model”时 require MODEL_PATH . $class . ".class.php"; } else if( substr($class, -10) == "Controller"){//所需要的类的名字最后10个字符是"Controller”时 require CTRL_PATH . $class . ".class.php"; } } /* echo "
    ";
    $test = ModelFactory::mf('ActiModel');
    $result = $test->getActiByid('1');
    echo "
    ";
    if ($result === false) {
        echo "
    "; $e = $test->getErrorInfo(); echo "$e[2]"; echo "
    "; } var_dump($result); echo "
    "; #*/ /* $config = array( 'host' => "localhost", 'port' => 3306, 'user' => "root", 'pass' => "root", 'charset' => "utf8", 'dbname' => "asso_db" ); $dsn = "mysql:host=$config[host]; port=$config[port]; dbname=$config[dbname]"; $opt = array(PDO::MYSQL_ATTR_INIT_COMMAND => "set names " . $config['charset']); $pdo = new PDO($dsn, $config['user'], $config['pass'], $opt); $stmt = $pdo->query("select * from asso_info where asso_id = '10'"); $result = $stmt->fetchAll(PDO::FETCH_ASSOC); echo "
    ";
    if ($result === false) {
        echo "
    "; $e = $pdo->errorInfo(); echo "$e[2]"; echo "
    "; } if ($stmt === false) { echo "
    "; $e = $pdo->errorInfo(); echo "$e[2]"; echo "
    "; } var_dump($stmt); echo "
    "; var_dump($result); echo "
    "; #*/ /* $membTable = TableFactory::membTable('123456789012','2','test','会员'); $test = ModelFactory::mf("MembModel"); $result = $test->insertMemb($membTable); echo "
    ";
    if ($result === false) {
        echo "
    "; $e = $test->getErrorInfo(); echo "$e[2]"; echo "
    "; } var_dump($result); echo "
    "; #*/ //* session_start(); if (!isset($_SESSION['admin'])) { $p = "front"; $c = "Login"; if ($a!='check') { $a = 'login'; } } $ctrl_name = $c . "Controller"; //构建控制器的类名 $ctrl = new $ctrl_name (); //可变类 $action = $a . "Action"; $ctrl->$action(); #*/ //开启session
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • 85
    • 86
    • 87
    • 88
    • 89
    • 90
    • 91
    • 92
    • 93
    • 94
    • 95
    • 96
    • 97
    • 98
    • 99
    • 100
    • 101
    • 102
    • 103
    • 104
    • 105
    • 106
    • 107
    • 108
    • 109
    • 110
    • 111
    • 112
    • 113
    • 114
    • 115
    • 116
    • 117
    • 118
    • 119
    • 120
    • 121
    • 122
    • 123
    • 124
    • 125
    • 126
    • 127
    • 128
    • 129
    • 130
    • 131

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    pringBoot的全局异常处理汇总
    华为云云耀云服务器L实例评测|华为云云耀云服务器L实例CentOS的存储和备份策略
    一种基于ChatGPT的高效吃瓜方式的探索和研究。
    UVM之TLM port基础
    深入理解Java基本数据类型与引用数据类型
    设计模式 - 责任链
    ElasticSearch Query DSL(四)
    小程序上车,车载小程序的信息安全是否可靠?
    JavaWeb对于JSP基础语法实战详解
    springCloud笔记(狂神)
  • 原文地址:https://blog.csdn.net/sheziqiong/article/details/127701241