Tạo một biểu mẫu để đăng nhập tùy chỉnh. Tạo các mục văn bản cho tên người dùng và mật khẩu, v.v. và nút đăng nhập. Khi người dùng nhấp vào nút đăng nhập đó, hãy gọi quy trình plsql này.
khai báo loại
vPassword fox_user.password%; - lấy loại trường mật khẩu từ bảng tổng thể người dùng của bạn
plid paramlist;
begin
- kiểm tra xem tên người dùng có là null không
nếu:appstart.usn là null thì
error_message ('Tên người dùng phải được nhập.');
go_item ('appstart.usn');
raise Form_Trigger_Failure;
end if;
- kiểm tra xem có mật khẩu không null
nếu:appstart.psw là null thì
error_message ('Mật khẩu phải được nhập.');
go_item ('appstart.psw');
nâng Form_Trigger_Failure;
end if;
chọn mật khẩu thành vpassword
từ fox_user
trong đó rtrim (userid) =rtrim (:appstart.usn);
- giải mã mật khẩu bằng mã hóa của riêng bạn / decrypt method.
- decrypt được đề cập dưới đây là đơn vị chương trình tôi đã sử dụng
if:appstart.psw! =decrypt (vpassword) then
error_message ('Mật khẩu không hợp lệ cho người dùng. Đăng nhập bị Từ chối! ');
go_item (' appstart.psw ');
nâng form_trigger_Failure;
end if;
- nếu tên người dùng và mật khẩu hợp lệ thì tạo danh sách tham số để chuyển biểu mẫu gọi
plid:=get_parameter_list ('formdata');
if Not id_null (plid) then
Destroy_parameter_list (plid);
end if;
plid:=Create_Parameter_list ('formdata');
Add_parameter (plid, 'userid', text_parameter,:appstart.usn);
new_form ('main', full_rollback, no_query_only, plid);
ngoại lệ
khi no_data_found thì
error_message ('Userid không hợp lệ. Vui lòng nhập userid và mật khẩu hợp lệ. Đăng nhập Bị từ chối!');
go_item ('appstart.usn');
when too_many_rows then
error_message ('Lỗi nội bộ ...');
khi những người khác thì
null;
end;