用户登录,我是这样写的,但是用户名和密码都正确,就是进不去,显示showmessage语句中的内容,兄弟搞了一个下午了,却还不知错在那里,请那位高手指点一二,本人在线等待?!!
procedure TForm1.BitBtn1Click(Sender: TObject);
var
j:integer;
begin
with saledatemod.user do
begin
close;
sql.Clear;
sql.Add('select * from tuser where login='+quotedstr(edit1.Text));
open;
first;
if edit2.Text=fieldbyname('psw').AsString then
  begin
  mainfrm.ShowModal;
  form1.Hide;
  end
  else
  begin
showmessage('你输入的用户名和密码有误,请重新输入');
edit2.Text:='';
edit1.SetFocus;
end;
end;
end;
end.

解决方案 »

  1.   

    if edit2.Text=fieldbyname('psw').AsString then用下面的代替,SameText在SysUtils单元中
    if SameText(edit2.Text,fieldbyname('psw').AsString) then
      

  2.   

    你放个DBGRID,看看 saledatemod.user数据是怎么变化的
      

  3.   

    我试了一下,假如不用if...then 语句,只是索引出psw数据,还是行的,如edit2.text:=fieldbyname('psw').asstring,在edit2是可以显示出索引的正确数据出来,因此现在基本的确定是if...then语句没有得到执行,晕,不知所因
      

  4.   

    检查一下saledatemod.user 的事件