c语言编写的cgi程序实现登陆模块

这个登陆模块前端界面很简洁,只是为了实现功能。

1.Login.html

c语言编写的cgi程序实现登陆模块_第1张图片

2.Main.html


在Login.html通过输入用户名和密码进行登陆,验证成功,跳入Main.html。

Main.html显示了当前登录的用户(admin),和一个退出登录功能。

通过Cookie和Session来保存用户的登陆状态。

下面是整个流程的原理图

c语言编写的cgi程序实现登陆模块_第2张图片


在Login.html登陆,如果用户名密码都匹配成功,则创建或更新SessionId

SessionId与UserId绑定。创建SessionId的时候同时也会设置Cookie,Name:SessionId Value:一个很难重复很难破译的字符串。

然后会跳转到Main.html。


在直接登陆Main.html时会检查是否从浏览器中接收了Cookie,如果接收到了,检查T_sessions表是否有这条记录,如果存在,说明用户处于登陆状态,否则跳转回登陆界面。

每次的创建或者更新Session操作都会更新LastUpdateTime字段。

如果想要设置Session的有效期,比如10分钟,需要在每次操作之前先检查当前时间与LastUpdateTime的差距是否超过了10分钟,如果超过了,就删除Cookie,需要重新登陆。如果没有就更新Cookie,并且更新LastUpdateTime.



你可能感兴趣的:(cgi,登陆模块)