需求整理:
1) 用户进入登录页面输入用户名、密码和验证码进行登录;
2) 如果用户登录错误次数超过3,从第三次起提示用户还可以输入的次数,第5次登录错误时锁定用户IP,并给出相应的提示信息;
3) 30分钟内阻止锁定IP上的任何登录尝试,30分钟后允许用户继续登录(解锁)。
下面是具体的流程图:

由于涉及到对登录次数的判断,因此必须在登录信息表中再添加errnum字段,用来记录用户登录错误的次数。
关于登录信息不匹配的处理,流程图如下:

至此,整个过程叙述完毕。
PS:
1) 第一张图中"用户表中存在此密码?"应改为"用户表中对应用户的密码是否与用户输入的密码匹配?"
2) 这篇文章只对程序的流程设计进行了说明,并不涉及任何代码端的实现,相关细节请自行脑补。
over.