基于PHP+MySQL家庭医生签约预约诊疗管理信息系统

news2024/9/27 12:13:18

随着时代的发展,人们对医疗方面的要求也越来越高,也是人们更希望通过家庭医生来对自己提供所需的医疗服务,从而享受更加个性化的医疗服务,为此我们开发了本家庭医生签约预约诊疗管理信息系统,通过本系统患者可以享有签约,预约,和诊疗等一系类的服务。
本系统是一个家庭医生签约预约诊疗管理信息系统,为了能够更加灵活的对医疗信息进行管理,本系统主要实现了管理员,医生,患者三种角色用户的登录和操作,其中管理员主要是管理医生和患者信息以及对系统的一些基本信息进行设置,医生用户主要是管理自己的个人信息,查看自己的病人信息,对患者的预约进行诊断和评价:患者用户主要是查看系统内不同科室的医生信息,并进行在线签约,签约后可以对自己的个人医生进行预约,通过这些模块可以让患者和家庭医生之间更好的进行医护关系的维护。
请添加图片描述
用户登录界面
家庭医生签约预约诊疗管理信息系统管理人员可以管理本系统内所有的医生信息,方便这些用户查看和管理自己的个人信息。在用户页面设计的时候设计一些单元格分别用来存放对应的用户名,密码,姓名,科室,电话,性别,从医时长,擅长等信息,然后在加入几个对应的Input用来存放对用户名,密码,姓名,科室,电话,性别,从医时长,擅长等信息在页面的底部加入一个保存按钮,在输入用户的基本信息之后点击保存按钮系统调用具体的方法讲数据添加到数据库中

请添加图片描述
医生信息管理列表
患者用户在登录之后又可以查看系统内的医生信息,在医生信息界面中可以看到医生的姓名,性别,科室,电话和删除等信息,如果有自己所需的以上信息可以通过医生后面的签约按钮进行签约,签约之后改医生将变成自己的家庭医生,医生信息签约界面如图
我的家庭医生界面管理
医生用户在登录之后可以看到病人的预约信息,在预约信息之用可以看到病人的用户名,姓名,时间,描述等内容,在对患者进行了诊断之后可以通过点击该条预约信息后面诊断按钮对其给出诊断结果和进行评价,医生用户查看预约界面如图

请添加图片描述
诊断管理界面
系统功能结构图
家庭医生签约预约诊疗管理信息系统主要是为医患之前提供服务的,系统分为管理员,医生用户,患者用户三部分。
本家庭医生签约预约诊疗管理信息系统主要实现了管理员,医生,患者三种角色用户的登录和操作,其中管理员主要是管理医生和患者信息以及对系统的一些基本信息进行设置,医生用户主要是管理自己的个人信息,查看自己的病人信息,对患者的预约进行诊断和评价:患者用户主要是查看系统内不同科室的医生信息,并进行在线签约,签约后可以对自己的个人医生进行预约,通过这些模块可以让患者和家庭医生之间更好的进行医护关系的维护。
请添加图片描述
请添加图片描述

<?php
error_reporting(E_ALL ^ E_NOTICE);

$conn=@mysql_connect("localhost","root","root") or die("数据库链接失败".mysql_error());
mysql_select_db("daizu",$conn) or die("数据库链接失败".mysql_error());
mysql_query('set names utf8');
 
 
//设置时区
date_default_timezone_set('asia/shanghai');
define('SYS_ROOT', str_replace("\\", '/', dirname(__FILE__)));
define('File_ROOT', SYS_ROOT."/upload/");
define('IMG_ROOT', SYS_ROOT . "/upload/");

@extract($_POST);
@extract($_GET);

function getfirst($sql)
{
	$res=mysql_query($sql);
	$rows=mysql_fetch_array($res);
	return $rows;
}
//
function getcount($sql){
	$res=mysql_query($sql);

return mysql_num_rows($res);
}
function get_name($id,$table)
{

	$sql="select * from $table where id='$id'";
	$rows=getfirst($sql);
	return $rows[name];
}
//遍历创建目录
function Remkdir($path) {
	if (!file_exists($path)) {
		Remkdir(dirname($path));
		@mkdir($path, 0777);
	}
}
//上传图片
function upload_image($inputname, $image=null, $type='upimages', $width=440) {
	 $n = time().rand(1000,9999).'.jpg';
	$z = $_FILES[$inputname];
	if ($z && strpos($z['type'], 'image')===0 && $z['error']==0) {
		if (!$image) {
			Remkdir( IMG_ROOT . '/' . "{$type}/" );
			$image = "{$type}/{$n}";
			$path = IMG_ROOT . '/' . $image;

		} else {
			Remkdir( dirname(IMG_ROOT .'/' .$image) );
						$image = "{$type}/{$n}";

			$path = IMG_ROOT . '/' .$image;
		}
//echo $path ;


			move_uploaded_file($z['tmp_name'], $path);

		//echo $image;exit;
		return $image;
	}
	return $image;
}
//获取文件后缀名
function get_extend($file_name)
{
$extend = pathinfo($file_name);
$extend = strtolower($extend["extension"]);
return $extend;
}
//文件上传实现

function upload_file($inputname, $file=null)
{
	$year = date('Y'); $day = date('md');
	$z = $_FILES[$inputname];


	$file_ext=get_extend($z['name']);

	
	$n = time().rand(1000,9999).".".$file_ext;
	if ($z &&  $z['error']==0) {
		if (!$file) {
			Remkdir( File_ROOT . '/' . "{$day}" );
			$file = "{$day}/{$n}";
			$path = File_ROOT . '/' . $file;

		} else {
			Remkdir( File_ROOT . '/' . "{$day}" );
						$file = "{$day}/{$n}";

			$path = File_ROOT . '/' .$file;
		}
//echo $path ;


			move_uploaded_file($z['tmp_name'], $path);

		//echo $file;exit;
		return $file;
	}
	return $file;
}
//分页函数.
function get_pager($url, $param, $count, $page = 1, $size = 10)
{
    $size = intval($size);
    if($size < 1)$size = 10;
    $page = intval($page);
    if($page < 1)$page = 1;
    $count = intval($count);

    $page_count = $count > 0 ? intval(ceil($count / $size)) : 1;
    if ($page > $page_count)$page = $page_count;

    $page_prev  = ($page > 1) ? $page - 1 : 1;
    $page_next  = ($page < $page_count) ? $page + 1 : $page_count;

    $param_url = '?';
    foreach ($param as $key => $value)$param_url .= $key . '=' . $value . '&';

    $pager['url']        = $url;
    $pager['start']      = ($page-1) * $size;
    $pager['page']       = $page;
    $pager['size']       = $size;
    $pager['count']		 = $count;
    $pager['page_count'] = $page_count;

	if($page_count <= '1')
	{
	    $pager['first'] = $pager['prev']  = $pager['next']  = $pager['last']  = '';
	}
	else
	{
		if($page == $page_count)
		{
			$pager['first'] = $url . $param_url . 'page=1';
			$pager['prev']  = $url . $param_url . 'page=' . $page_prev;
			$pager['next']  = '';
			$pager['last']  = '';
		}
		elseif($page_prev == '1' && $page == '1')
		{
			$pager['first'] = '';
			$pager['prev']  = '';
			$pager['next']  = $url . $param_url . 'page=' . $page_next;
			$pager['last']  = $url . $param_url . 'page=' . $page_count;
		}
		else
		{
			$pager['first'] = $url . $param_url . 'page=1';
			$pager['prev']  = $url . $param_url . 'page=' . $page_prev;
			$pager['next']  = $url . $param_url . 'page=' . $page_next;
			$pager['last']  = $url . $param_url . 'page=' . $page_count;
		}
	}
    return $pager;
}
?>


目录
1 绪论 1
1.1课题背景 1
1.2课题研究现状 1
1.3初步设计方法与实施方案 2
1.4本文研究内容 2
2 系统开发环境 4
2.1 使用工具简介 4
2.2 环境配置 4
2.3 B/S结构简介 4
2.4 MySQL数据库 5
2.5 框架介绍 5
3 系统分析 6
3.1系统可行性分析 6
3.1.1经济可行性 6
3.1.2技术可行性 6
3.1.3运行可行性 6
3.2系统现状分析 6
3.3功能需求分析 7
3.4系统设计规则与运行环境 8
3.5系统流程分析 8
3.5.1操作流程 8
3.5.2添加信息流程 9
3.5.3删除信息流程 10
4 系统设计 11
4.1系统设计主要功能 11
4.2数据库设计 11
4.2.1数据库设计规范 11
4.2.2 E/R图 11
4.2.3数据表 12
5 系统实现 25
5.1系统功能模块 25
5.2后台模块 27
5.2.1管理员功能模块 27
5.2.2用户功能模块 30
6 系统测试 33
6.1功能测试 33
6.2可用性测试 33
6.3性能测试 34
6.4测试结果分析 34
7结 论 35
参考文献 36
致 谢 37

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/56208.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[附源码]Python计算机毕业设计Django基于微信小程序的网络办公系统

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

qmake 参数

E:\workspace\QtWork\qmake\option.cpp:Option::init() -project 设置qmake生成工程相关文件&#xff0c;如果用qt creator开发的话这个命令参数基本用不到。 -prl 设置qmake生成prl文件。 -set 设置自定义属性&#xff0c;会存放到注册表中。具体参考属性 -unset 取消自定义…

网页JS自动化脚本(六)在特定位置添加元素

在某元素后插入元素 我们这一次在按钮元素后面复制一个一模一样的按钮,所以分为几个步骤,先新建一个一样的元素,然后把相同中的属性赋值给它,再插入到合适的位置,最后再稍微修改一下外观样式即可 首先新建一个input元素,看一下效果 window.onloadfunction(){var theElementdo…

[附源码]Python计算机毕业设计Django基于人脸识别的社区防疫管理系统

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

Pytest自动化测试框架---(单元测试框架)

unittest是python自带的单元测试框架&#xff0c;它封装好了一些校验返回的结果方法和一些用例执行前的初始化操作&#xff0c;使得单元测试易于开展&#xff0c;因为它的易用性&#xff0c;很多同学也拿它来做功能测试和接口测试&#xff0c;只需简单开发一些功能&#xff08;…

阿里云新用户活动:云服务器ECS 新购、升级报价出炉了!

阿里云新人特惠&#xff0c;阿里云新用户新购升级立享满减&#xff0c;新购升级云服务器ECS &#xff0c;购买热门产品 s6/u1/c6/g6/r6/c7/g7/r7指定配置&#xff0c;可享折上折&#xff01;从未购买过云服务器ECS或者轻量应用服务器的用户一次性可领取3张优惠券。优惠券适用于…

深入浅出Seata的AT模式

单个掉队&#xff0c;导致集体被动摆烂&#xff1b; 一、业务背景 在分布式架构中&#xff0c;事务管理是个无法避开的复杂问题&#xff0c;虽然有多种解决方案&#xff0c;但是需要根据业务去选择合适的&#xff1b; 从个人最近几年的实践经验来看&#xff0c;Seata组件的AT…

【JUC】SpringBoot使用线程池的两种方式 注解和注入

学习笔记一、ThreadPoolTaskExecutor与ThreadPoolExecutor的区别二、编写配置文件ThreadPoolConfig二、编写Controller三、编写Service3.1、注解3.1、注入一、ThreadPoolTaskExecutor与ThreadPoolExecutor的区别 ThreadPoolExecutor 是JDK自1.5添加的线程池。 ThreadPoolTaskE…

排序算法:插入排序,选择排序,冒泡排序

插入排序 一般来说&#xff0c;插入排序都采用in-place在数组上实现。具体算法描述如下&#xff1a; 步骤1: 从第一个元素开始&#xff0c;该元素可以认为已经被排序&#xff1b; 步骤2: 取出下一个元素&#xff0c;在已经排序的元素序列中从后向前扫描&#xff1b; 步骤3: 如…

[附源码]计算机毕业设计-中国传统手工艺销售平台Springboot程序

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

[附源码]计算机毕业设计JAVA校园失物招领平台

[附源码]计算机毕业设计JAVA校园失物招领平台 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybati…

李峋同款会动的爱心Python代码版

最近看到不少关于李峋同款爱心的视频、文章&#xff0c;今天我们也分享一下李峋同款爱心 Python 代码版。要问李峋是谁&#xff1f;我也不太清楚&#xff0c;大家可自行百度&#xff0c;这个是我百度的结果&#xff0c;仅供参考。 简单来说李峋同款爱心就是一个动态的♥型效果&…

【STM32学习(1)】详解STM32时钟体系

一、8051和stm32时钟体系结构区别 HSE&#xff1a;外部高速的振荡时钟&#xff08;8MHZ&#xff09; HSI&#xff1a;内部高速的振荡时钟&#xff08;16MHZ&#xff09; LSI&#xff1a;内部低速的振荡时钟&#xff08;32KHZ&#xff09; LSK&#xff1a;外部低速的振荡时钟&a…

HTML+CSS+JS静态网页设计【篮球NBA介绍体育运动】web前端学生作业源码

&#x1f389;精彩专栏推荐 &#x1f4ad;文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 &#x1f482; 作者主页: 【主页——&#x1f680;获取更多优质源码】 &#x1f393; web前端期末大作业&#xff1a; 【&#x1f4da;毕设项目精品实战案例 (10…

【学习笔记】DDD领域驱动设计篇

【学习笔记】DDD领域驱动设计篇 文章目录【学习笔记】DDD领域驱动设计篇什么是DDD&#xff1f;DDD的优缺点DDD的架构框架详解User Interface层application层domain层infrastructure层结语什么是DDD&#xff1f; DDD 是 Domain driven design &#xff08;领域驱动设计&#xf…

GIS工具maptalks开发手册(四)02——渲染地图信息框之添加绘制工具 获取面的坐标数据信息框进行展示 渲染图片的两种方式

GIS工具maptalks开发手册(四)02——渲染地图信息框之添加绘制工具 & 获取面的坐标数据信息框进行展示 & 渲染图片的两种方式 效果-获取面的坐标 效果-渲染图片的2种方式 代码 index.html <!DOCTYPE html> <html> <meta charset"UTF-8">…

[附源码]计算机毕业设计springboot校园招聘系统设计

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

家装家居行业该如何进行网络推广?

咱们这里谈家居家装行业&#xff0c;指得是置办新家的大件产品&#xff0c;不是锅碗瓢盆&#xff0c;也不是床单被罩那些。如衣柜、橱柜、灯具、智能马桶、窗户、瓷砖、沙发、床等等这些是咱们讨论的范围。 在家装家居行业中&#xff0c;每个产品的客单价通常很高&#xff0c;回…

更改 HIVE 表字段数据类型有哪些注意事项?

更改 HIVE 表字段数据类型有哪些注意事项&#xff1f; 1. 使用 HIVE 表的常见规范 在大数据离线分析场景中&#xff0c;在数据建模/表格式这一层&#xff0c;目前使用最多的还是 APACHE HIVE 这一数据仓库框架&#xff08;湖仓一体的框架&#xff0c;如 Iceberg/DeltaLake/Hu…

深入理解 Web 协议:HTTP 2

目录 本篇将详细介绍 http2 协议的方方面面&#xff0c;知识点如下&#xff1a; HTTP 2 连接的建立 HTTP 2 中帧和流的关系 HTTP 2 中流量节省的奥秘&#xff1a;HPACK 算法 HTTP 2 协议中 Server Push 的能力 HTTP 2 为什么要实现流量控制&#xff1f; HTTP 2 协议遇到的…