|
发表于 2020-4-14 21:50:29
|
显示全部楼层
贵州省贵阳市
个人建议,连接-执行-关闭。每次都这样循环- .版本 2
- .支持库 mysql
- .子程序 _按钮_登录_被单击
- .如果真 (编辑框_用户名.内容 = “”)
- 信息框 (“请输入正确的用户名!”, #警告图标, “左宁警告”)
- 编辑框_用户名.获取焦点 ()
- 返回 ()
- .如果真结束
- .如果真 (编辑框_密码.内容 = “”)
- 信息框 (“请输入正确的密码!”, #警告图标, “左宁警告”)
- 编辑框_密码.获取焦点 ()
- 返回 ()
- .如果真结束
- .如果真 (编辑框_验证码.内容 = “”)
- 信息框 (“请输入正确的验证码!”, #警告图标, “左宁警告”)
- 编辑框_验证码.获取焦点 ()
- 返回 ()
- .如果真结束
- .如果真 (到大写 (编辑框_验证码.内容) ≠ 到大写 (验证码))
- 信息框 (“验证码输入错误,请从新输入!”, #警告图标, “左宁警告”)
- 编辑框_验证码.内容 = “”
- 编辑框_验证码.获取焦点 ()
- 验证码 = 生成验证码 (画板_验证码)
- 返回 ()
- .如果真结束
- .如果真 (连接数据库 () = 假)
- 信息框 (“数据库连接失败!”, #错误图标, “左宁报错”)
- 结束 ()
- 返回 ()
- .如果真结束
- .如果真 (执行SQL语句 (数据库句柄, “select * from admin where User_Name='” + 编辑框_用户名.内容 + “' and Pass_Word='” + 编辑框_密码.内容 + “'”) = 假)
- 信息框 (“执行SQL语句失败!请检查网络设置!”, #错误图标, “左宁报错”)
- 结束 ()
- 返回 ()
- .如果真结束
- 记录集句柄 = 取记录集 (数据库句柄)
- .如果真 (取记录集行数 (记录集句柄) ≤ 0)
- 信息框 (“用户名或密码错误,请重新输入!”, #警告图标, “左宁警告”)
- 编辑框_验证码.内容 = “”
- 验证码 = 生成验证码 (画板_验证码)
- 释放记录集 (记录集句柄)
- 断开MySql (数据库句柄)
- 返回 ()
- .如果真结束
- 读字段值 (记录集句柄, “Role_ID”, 权限)
- 读字段值 (记录集句柄, “ID”, 管理员ID)
- 释放记录集 (记录集句柄)
- 断开MySql (数据库句柄)
- .如果真 (权限 = 0)
- 信息框 (“该用户无任何操作权限!” + #换行符 + “请使用其他用户登录!”, #信息图标, “左宁提示”)
- 编辑框_验证码.内容 = “”
- 验证码 = 生成验证码 (画板_验证码)
- 返回 ()
- .如果真结束
- 管理员 = 编辑框_用户名.内容
- 信息框 (“登录成功!【” + 管理员 + “】欢迎使用!”, #信息图标, “左宁提示”)
- 载入 (窗口_主窗口, , 假)
- 窗口_登录.销毁 ()
- .子程序 连接数据库, 逻辑型
- 数据库句柄 = 连接MySql (#服务器, #数据库用户名, #数据库密码, #数据库名, 3306)
- .如果真 (数据库句柄 ≤ 0)
- 返回 (假)
- .如果真结束
- .如果真 (执行SQL语句 (数据库句柄, “SET NAMES 'GBK'”) = 假)
- 返回 (假)
- .如果真结束
- 返回 (真)
复制代码
给你一个参考,每次执行过后关闭,下次执行连接,易语言嘛,总有点漏洞不是吗?反正都是sock连接 |
|