unitmodifypassword.pas
来自「自己做过的工程」· PAS 代码 · 共 99 行
PAS
99 行
unit unitmodifypassword;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
Tformmodifypassword = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
but_ok: TButton;
but_cancel: TButton;
Label1: TLabel;
ed_newpassword: TEdit;
Label2: TLabel;
ed_affirm: TEdit;
ed_password: TEdit;
Label3: TLabel;
procedure but_cancelClick(Sender: TObject);
procedure but_okClick(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
formmodifypassword: Tformmodifypassword;
implementation
uses unitDMHotel,unitlogging;
{$R *.dfm}
procedure Tformmodifypassword.but_cancelClick(Sender: TObject);
begin
close;
end;
procedure Tformmodifypassword.but_okClick(Sender: TObject);
var
userpassword:string;
begin
//验证原密码是否正确
DMHotel.ds_sys_user.Open;
DMHotel.ds_sys_user.Locate('username',username,[]);
userpassword:=DMHotel.ds_sys_user.FieldByName('userpassword').AsString;
DMHotel.ds_sys_user.Close;
if userpassword<>ed_password.Text then
begin
showmessage('原密码不正确,请重新输入!');
ed_password.Text:='';
ed_newpassword.Text:='';
ed_affirm.Text:='';
ed_password.SetFocus;
exit;
end;
//新密码与确认密码不一致
if trim(ed_newpassword.Text) <> trim(ed_affirm.Text) then
begin
showmessage('新密码与确认密码不一致,请重新输入!');
ed_newpassword.Text:='';
ed_affirm.Text:='';
ed_newpassword.SetFocus;
exit;
end;
//修改sys_user表
DMHotel.ADOConnection1.BeginTrans; //定义事务
SQL:='update sys_user set userpassword='+''''+ed_newpassword.Text+''''+' '+
'where username='+''''+username+'''';
DMHotel.ADOQuery1.SQL.Text:=SQL;
try
DMHotel.ADOQuery1.ExecSQL;
except
showmessage('修改密码失败!');
DMHotel.ADOConnection1.RollbackTrans; //失败回滚
end;
DMHotel.ADOConnection1.CommitTrans; //成功提交
showmessage('您的密码已改变!');
close;
end;
procedure Tformmodifypassword.FormShow(Sender: TObject);
begin
ed_password.Text:='';
ed_newpassword.Text:='';
ed_affirm.Text:='';
ed_password.SetFocus;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?