员工管理系统

一、项目原理

        1、开发工具

                        Linux操作系统、Ubuntu、VScode、sqlite3数据库

        2、涉及知识点

                        1、TCP并发服务模型

                        2、文件IO

                        3、sqlite3命令语句

        3、原理

                        1、TCP多线程并发服务器实现多用户同时登录

                        2、服务器中创建数据库,在数据库中创建员工信息表和历史记录表存放相关信息

                        3、登录成功后选择相应操作编号,调用send函数发送给服务器,服务器执行对应功能函数

                        4、功能函数中主要通过封装sqlite3命令,调用sqlite3函数实现相应增删改查功能

                        5、增删改查的结果服务器调用recv函数发送给客户端,客户端进行打印

二、基本功能

        1、可实现多用户同时登录,用户分为管理员用户和普通用户

        2、管理员用户可以对其他用户进行增删改查

        3、普通用户只能对自己的信息进行更改和查看

        4、员工的登录信息存放在历史记录表中,管理员可查看       

三、效果展示

管理员登录>>>

 管理员查询>>>

 管理员修改、添加、删除用户>>>

 普通用户实现>>>

四、源码

头文件>>>

#ifndef __STAFF_H__
#define __STAFF_H__
#define ERR_MSG(msg) do{\
	fprintf(stderr,"__%d__:",__LINE__);\
	perror(msg);\
}while(0)
#define PORT 8888
#define IP "192.168.250.100"
//定义员工信息结构体
typedef struct staff_info{
	int num;
	int usertype;
	char name[16];
	char passwd[8];
	int age;
	char phone[16];
	char addr[128];
	char work[128];
	char date[128];
	int level;
	double salary;
}staff_info_t;
//定义通信的结构体信息
typedef struct {
	int msgtype;
	int usertype;
	char username[128];
	char passwd[8];
	char recvmsg[1024];
	int flags;
	staff_info_t info;
}msg;
struct fcd
{
	int newfd;
	struct sockaddr_in cin;
	sqlite3* db;
};
#endif

服务器及客户端源码

        见附件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值