注册 登录
编程论坛 Delphi论坛

[求助]有个登陆窗口的问题,用户名和密码怎么用循环表示啊

hln26460822 发布于 2007-04-12 20:04, 804 次点击
要做个登陆窗口,判断用户名和密码的时候如果用循环要怎么写代码,其他的数据库都已经连接好了,我是用datasource,adotable和数据库连在一起的,但是写代码的时候循环老出错,快来帮我看看

7 回复
#2
anthony6342007-04-12 20:19

最好给出你写的代码,判断给的字符串和库里的条目是否相等就可以。

#3
hln264608222007-04-12 20:27
begin
adotable1.First;
while (ed_user.Text <> adotable1.FieldByName('user').AsString) or
(ed_password.Text <> adotable1.FieldByName('password').AsString ) do
begin
adotable1.Next;
if adotable1.Eof then
begin
show_waring('用户名或密码不对,请从新输入!') ;
ed_user.SetFocus;
Exit;
end;
Frm_Management.ShowModal;
end;
end;
#4
anthony6342007-04-12 20:46

Frm_Management.ShowModal; 是登录成功后的窗体么?是的花这个应该在循环外面

[此贴子已经被作者于2007-4-12 20:47:33编辑过]

#5
hln264608222007-04-12 20:52
是啊,那我试下,谢谢
#6
hln264608222007-04-12 20:56
不对 啊,还是报错
#7
anthony6342007-04-12 21:09

试验下?
begin
adotable1.First;
while (ed_user.Text <> adotable1.FieldByName('user').AsString) or
(ed_password.Text <> adotable1.FieldByName('password').AsString ) do
begin
adotable1.Next;
if adotable1.Eof then
begin
Break();
end;
end;
if (ed_user.Text = adotable1.FieldByName('user').AsString) and
(ed_password.Text = adotable1.FieldByName('password').AsString ) then
begin
Frm_Management.ShowModal;
end
else
begin
show_waring('用户名或密码不对,请从新输入!') ;
ed_user.SetFocus;
end;
end;

#8
hln264608222007-04-13 08:57
OK,thank you
1