Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Làm cách nào tôi có thể tạo xác thực trực tiếp phía máy chủ oracle apex mà không cần gửi trang

Có, bạn có thể tạo xác thực phía máy chủ bằng cách sử dụng Dynamic Action và hàm JavaScript apex.server.process .

Một ví dụ cơ bản để chứng minh-

  • Tạo một mục trang, ví dụ:P4_NAME trong trang của bạn
  • Tạo quy trình trang và chọn điểm thực thi là "AJAXCALLBACK".

Trong đoạn mã dưới đây, tôi đang kiểm tra giá trị P4_ITEM, bạn có thể viết logic của riêng mình để xác thực.

BEGIN
   IF :P4_NAME = 'HIMANSHU'
   THEN
      HTP.prn ('SUCCESS');
   ELSE
      HTP.prn ('ERROR');
   END IF;
END;
  • Bây giờ, hãy tạo một hành động động mới và chọn Sự kiện là "LOSE FOCUS", Loại lựa chọn dưới dạng "(Các) mặt hàng" và trong (Các) Mặt hàng chọn tên mục.

  • Tạo một hành động đúng và chọn "thực thi Mã JavaScript".

Trong phần mã, hãy triển khai apex.server.process như bên dưới-

apex.server.process('validate_name',
{
   pageItems : '#P4_NAME'
}
,
{
   dataType : 'text', success : function(data)
   {
      if(data != 'SUCCESS')alert(data);
   }
}
)

Đối số đầu tiên là tên quy trình trang (validate_name) mà chúng tôi đã tạo trước đó, thứ hai là dữ liệu bạn muốn gửi cho quy trình và thứ ba là tùy chọn. Để biết thêm chi tiết về apex.server.process

Nó được thực hiện. Làm mới trang của bạn và kiểm tra. Khi xác thực không thành công, bạn sẽ nhận được một cảnh báo.

Bạn có thể tùy chỉnh thêm mã JS của mình để hiển thị thông báo lỗi theo cách lạ mắt hơn thay vì hiển thị cảnh báo.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-01950:không có đặc quyền trên vùng bảng 'NGƯỜI DÙNG'

  2. Sống sót sau một cuộc kiểm tra Oracle

  3. Ủy quyền đặc quyền Oracle SQL trên nhiều thuộc tính và bảng bằng một câu lệnh

  4. Truy vấn với lựa chọn phụ bị hỏng sẽ dẫn đến lỗi nhưng trả về các hàng

  5. Oracle Streams Step by Step Replication Ví dụ