【发布时间】:2019-08-18 01:36:48
【问题描述】:
我有一个身份验证方案,目前只验证用户是否在一个表中,即雇主表。现在我希望这个身份验证方案来验证用户是雇主还是雇员,并且根据他们是雇主还是雇员,它应该将他们重定向到不同的页面。
首先,如何在身份验证脚本中包含第二个表?我最大的问题是,当员工登录时,我是否需要第二个应用程序链接到第一个应用程序?这还能怎么做?我目前只有雇主论坛和雇主登录页面。如果员工登录,我将如何隐藏所有雇主报告/表格,只让他们查看员工表格/报告?
我当前的身份验证方案如下所示。
FUNCTION authenticate(p_username IN VARCHAR2
,p_password IN VARCHAR2) RETURN BOOLEAN IS
l_value NUMBER;
l_returnvalue BOOLEAN;
BEGIN
BEGIN
SELECT 1
INTO l_value
FROM employer
WHERE 1 = 1
AND upper(employer.username) = upper(p_username)
AND upper(employer.passwords) = upper(p_password);
EXCEPTION
WHEN no_data_found
OR too_many_rows THEN
l_value := 0;
WHEN OTHERS THEN
l_value := 0;
END;
l_returnvalue := l_value = 1;
RETURN l_returnvalue;
END;
【问题讨论】:
-
您最好使用数字变量而不是字符串类型进行身份验证。例如标识号而不是 p_username。
标签: sql oracle oracle-apex