我想做一个象QQ密码修改的界面试写下面代码
if (Edit2.text=query1.FieldByName('密码').asstring) and (Edit3.text=edit4.text) then
begin
if (edit3.Text='') or (edit4.Text='') then
Application.MessageBox('请输入新密码!','重要提示!', 0)
else
begin
query1.edit;
query1.FieldByName('用户名').asstring:=Edit1.Text;
query1.FieldByName('密码').asstring:=Edit2.Text;
query1.post;
query1.Refresh;
Application.MessageBox('★密码已修改★※','重要提示!', 0);
query1.Active:=false;
//close;
end;
end
else
Application.MessageBox('用户名或密码错误!','错误信息提示', 0);
但是有错
请教高手帮忙
(query1.FindKey([Edit1.text]))这一句写在哪啊?
if (Edit2.text=query1.FieldByName('密码').asstring) and (Edit3.text=edit4.text) then
begin
if (edit3.Text='') or (edit4.Text='') then
Application.MessageBox('请输入新密码!','重要提示!', 0)
else
begin
query1.edit;
query1.FieldByName('用户名').asstring:=Edit1.Text;
query1.FieldByName('密码').asstring:=Edit2.Text;
query1.post;
query1.Refresh;
Application.MessageBox('★密码已修改★※','重要提示!', 0);
query1.Active:=false;
//close;
end;
end
else
Application.MessageBox('用户名或密码错误!','错误信息提示', 0);
但是有错
请教高手帮忙
(query1.FindKey([Edit1.text]))这一句写在哪啊?
...
...
根据用户名称查询密码,无记录就说明无这个用户,或者密码错误等等
with TempQuery do
begin
close;
sql.clear;
sql.add('select 1 from passtable where user=:user,pass=:pwd');
fieldbyname('user').asstring:=trim(edit1.text);
fieldbyname('pwd').asstring:=trim(edit2.text);
open;
if isEmpty then
begin
showmessage('密码错误');
edit2.clear;
edit2.setfoucs;
end
else
if (edit3.Text='') or (edit4.Text='') then
Application.MessageBox('请输入新密码!','重要提示!', 0);
if Trim(edit3.text)<>Trim(edit4.text) then
Application.MessageBox('新密码不同!','重要提示!', 0);
end;
with Query1 do
begin
close;
sql.clear;
sql.add(Update table set 用户名=:username,密码=:PWD);
FieldByName('username').asstring:=Trim(Edit1.Text);
FieldByName('pwd').asstring:=Trim(Edit3.Text);
Exec;
end;