当前位置:网站首页>基于php志愿者服务平台管理系统获取(php毕业设计)
基于php志愿者服务平台管理系统获取(php毕业设计)
2022-08-03 12:16:00 【毕设源码库】
基于php志愿者服务平台管理系统
志愿者服务平台管理系统是基于php编程语言和mysql数据库设计,系统分为志愿者和管理员两个角色,其中志愿者可以注册和登陆平台,查看志愿活动,报名参加志愿活动,对志愿活动进行捐款,在线论坛交流,查看新闻通知等功能,管理员可以对系统用户,注册志愿者,志愿活动,帖子论坛,在线捐款,在线报名等功能进行管理。本系统功能齐全,有论文文档,适合作为php毕业设计和课程设计参考与学习。
一.技术环境
php版本:5.3 及以上
后台框架:无,php原生开发简单易懂
开发工具: notepad++,sublime,phpstorm都可
数据库: mysql
服务器: apache
集成环境: phpstudy(或其他)
详细技术:HTML+CSS+JS+PHP+MYSQL+PhpStudy
二.项目文件

三.系统功能

四.代码示例
<?php
// +----------------------------------------------------------------------
// | 登录功能
// | 设计思路,获取到用户输入的账号和密码,验证用户输入的数据,验证通过,
// | 保存用户的登录信息到数据库,并且生成cookie,提示用户登录成功
// +----------------------------------------------------------------------
//引用常用的函数
require_once('../../../config/config.php');
//获取登录的用户名
$name = $_POST['name'];
//获取用户的登录密码
$password = $_POST['password'];
//获取登录的角色
$role = $_POST['role'];
//判断用户输入的用户名是否为空
if (!$name) {
//如果为空,返回提示信息
ajaxReturn(0, '请输入用户名');
}
//判断用户输入的密码是否为空
if (!$password) {
ajaxReturn(0,'请输入密码');
}
//sql语句
$sql = "SELECT * FROM users WHERE name='$name' AND password='$password'";
//查询数据库用户记录,fetchOne函数在mysql.php里
$result = fetchOne($link,$sql);
//如果没有查询到此用户
if(!$result) {
ajaxReturn(0,'抱歉,登录名和密码错误!');
}else {
//保存用户的session
$user = array(
'id'=>$result['id'],
'name'=>$result['name'],
'avatar' =>$result['avatar'],
'role'=>$result['role']
);
//如果是用户登录
if($role == 1) {
if($result['role'] == 1){
//设置session,失效时间1小时
$_SESSION["user"]=$user;
ajaxReturn(1,'恭喜你,登录成功!');
}else{
ajaxReturn(0,'抱歉,你不是用户!');
}
}
//如果是管理员登录
if($role == 2 ) {
//判断是否是管理员
if($result['is_admin'] == 1) {
//设置session,失效时间1小时
$_SESSION["admin"]=$user;
//提示登录成功
ajaxReturn(2,'恭喜你,登录成功!');
}else{
//如果不是管理员,给予提示
ajaxReturn(0,'抱歉,你不是管理员!');
}
}
}
<?php
// +----------------------------------------------------------------------
// | 注册功能
// | 设计思路,首先判断用户输入的数据是否正确,在判断用户的邮箱有没有注
// | 过,满足条件,注册成功,ajaxReturn函数在include.php中
// +----------------------------------------------------------------------
//引用常用的函数
require_once('../../../config/config.php');
//获取前台发来的数据
$name = $_POST['name'];//获取用户名
$password = $_POST['password'];//获取密码
$email = $_POST['email'];//获取游戏
$password_o = $_POST['password_o'];//获取重复密码
//判断用户名
if(!$name) {
ajaxReturn(0,'用户名格式不正确,英文加数字!');
}
//判断密码是否输入正确
if(!is_password($password)) {
ajaxReturn(0,'密码格式不正确,不少于6位!');
}
//判断邮箱是否输入正确
if(!is_email($email)) {
ajaxReturn(0,'邮箱格式不正确!');
}
//判断两次密码输入是否一致
if($password != $password_o) {
ajaxReturn(0,'两次输入的密码不一致!');
}
//查询数据库是否已经注册过此邮箱
$sql = "SELECT * FROM users WHERE email='$email'";
$result1 = fetchAll($link,$sql);
if($result1) {
ajaxReturn(0,'抱歉,此邮箱已经注册过!');
}
$data = array(
'name'=>$name,
'password'=>$password,
'email'=> $email,
'addtime'=>date('Y-m-d H:i:s')
);
//保存用户的注册信息到users表,其中的$link在include.php里
$result2 = insert($link,$data,'users');
//注册成功和失败的话,返回提示
if(!$result2) {
ajaxReturn(0,'注册失败!');
}else{
ajaxReturn(1,'恭喜你注册成功');
}
五.项目截图














边栏推荐
- 数据库系统原理与应用教程(075)—— MySQL 练习题:操作题 151-159(十九):综合练习
- 随机森林项目实战---气温预测
- 业界新标杆!阿里开源自研高并发编程核心笔记(2022最新版)
- App自动化测试怎么做?实战分享App自动化测试全流程
- 3年软件测试经验,不懂自动化基础...不知道我这种测试人员是不是要被淘汰了?
- 【Verilog】HDLBits题解——Circuits/Sequential Logic/Latches and Flip-Flops
- 面试突击71:GET 和 POST 有什么区别?
- ThreadLocal源码解析及使用场景
- 4500字归纳总结,一名软件测试工程师需要掌握的技能大全
- setTimeout 、setInterval、requestAnimationFrame
猜你喜欢

想学自动化测试网课哪个好?过了人告诉你:适合自己的才是最重要

B站回应“HR 称核心用户都是 Loser”:该面试官去年底已被劝退,会吸取教训加强管理

广州番禺:暑期防溺水,安全不放假

899. 有序队列

Random forest project combat - temperature prediction

fastposter v2.9.0 programmer must-have poster generator

How can I get a city's year-round weather data for free?Precipitation, temperature, humidity, solar radiation, etc.

Five super handy phone open-source automation tools, which is suitable for you?

项目概述、推送和存储平台准备

From the physical level of the device to the circuit level
随机推荐
ROS中编译通过但是遇到可执行文件找不到的问题
Matlab学习11-图像处理之图像变换
-树的高度-
bash for循环
深度学习跟踪DLT (deep learning tracker)
PC client automation testing practice based on Sikuli GUI image recognition framework
从零开始Blazor Server(6)--基于策略的权限验证
LeetCode-1161. 最大层内元素和
nacos应用
Mysql重启后innodb和myisam插入的主键id变化总结
Feature Engineering Study Notes
LyScript implements memory stack scanning
【精品必知】Pod生命周期
第3章 搭建短视频App基础架构
TiKV & TiFlash 加速复杂业务查询丨TiFlash 应用实践
R language ggplot2 visualization: use the patchwork bag plot_layout function will be more visual image together, ncol parameter specifies the number of rows, specify byrow parameters configuration dia
R语言拟合ARIMA模型并使用拟合模型进行预测推理、使用autoplot函数可视化ARIMA模型预测结果、可视化包含置信区间的预测结果
App自动化测试怎么做?实战分享App自动化测试全流程
YOLOv5训练数据提示No labels found、with_suffix使用、yolov5训练时出现WARNING: Ignoring corrupted image and/or label
苹果发布 AI 生成模型 GAUDI,文字生成 3D 场景