login问题,100分

syha 2003-10-17 08:01:34
请高手讲讲 常用的LOGIN窗体:
1.'用户名'和'密码'是用什么控件实现的?
2.具体的实现方法是什么?
3.对于访库时的控制有什么?
4.对于密码的常用加密方法的实现?
5.对于不同的登陆,我要设置一个权限,应该在修改密码的时候做什么限制,怎么实现?

...全文
41 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
dickeybird888 2003-10-18
  • 打赏
  • 举报
回复
哈哈!本来想写段代码,看来可以省了
1
(·¥·)
  • 打赏
  • 举报
回复
一般用户名登陆的窗体都是自己做。
Northwindrocker 2003-10-18
  • 打赏
  • 举报
回复
MD5
Northwindrocker 2003-10-18
  • 打赏
  • 举报
回复
1.'用户名'和'密码'是用什么控件实现的?
2.具体的实现方法是什么?
3.对于访库时的控制有什么?
4.对于密码的常用加密方法的实现?
5.对于不同的登陆,我要设置一个权限,应该在修改密码的时候做什么限制,怎么实现?
用户名和密码简单的用EDIT就可以实现,不过是把密码EDIT的passwordchar属性改为你想要的密码掩码。
一般数据库应用我基本上不限制用户在数据库中的权限,都是在程序中以SA(MS SQL SERVER)连接数据库,对数据库的读写权限都是在程序中实现这样控制灵活。
密码的常用加密算法很多,强大有MD3,3DES等当然实现起来很复杂我找了很久也没找到别人写好的DELPHI的这些算法的实现。简单你可以仅仅把输入的字符移个位,这样的算法很多你可以找找。
用户的权限基本上你要建一张表在表的不同字段里面放置用户的基本信息,权限设置等,用户登陆是取出来在程序中你需要验证的地方进行验证就可以了。
syha 2003-10-18
  • 打赏
  • 举报
回复
加密的时候,最输入的密码有什么限制吗?
比如,仅仅允许数字和英文字符?
angle097113 2003-10-17
  • 打赏
  • 举报
回复
对于不同的登陆,我要设置一个权限,应该在修改密码的时候做什么限制,怎么实现?
用action的tag属性来设置
用户名的控件就是普通的edit就可以了
密码显示的时候用maskedie显示
huojiehai 2003-10-17
  • 打赏
  • 举报
回复
如果用BDE
1.用TDatabase
2.
function ConnectDB(DataBase:TDatabase;ServerName,UserName,PassWord:string;
DBName:string='master'):Boolean;
begin
Result:=false;
DataBase.Connected:=false;
DataBase.Params.Clear;
Database.DriverName:='MSSQL';
Database.Params.Values['DataBase Name']:=DBName;
Database.Params.Values['Server Name']:=ServerName;
Database.Params.Values['User Name']:=UserName;
Database.Params.Values['PassWord']:=Password;
try
Database.Connected:=true;
except
Exit;
end;
Result:=true;
end;
hnhb 2003-10-17
  • 打赏
  • 举报
回复
用户名和密码的问题,你做一个登录窗口就是,不想让数据库自己的登录窗口出现,把连接数据库的组件的LoginPrompt设成false即可

最简单的权限就是把每个菜单项放到一张表中,设成它对某个操作员是否可用

加密么,我想你只是想对操作员的口令进行加密,写一段加密守符串的函数即可,给个一、例子如下:

Function Decrypt(const s:string;key:integer):string; //key=1时为加密,0为解密

Function TChatForm.Decrypt(const S:string;key:integer):string;
var
I:Integer;
begin
Result:='';
case key of
1: //加密
begin
for i:=1 to length(s) do
result := result+chr(ord(s[i]) xor i xor 69);
result := result + char(69);
end;
0: //解密
begin
for i:=1 to length(s) - 1 do
result := result+chr(ord(s[i]) xor i xor 69);
end;
end;
end;

2,495

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧