2013-03-31 80 views
0

我正在使用查询数据库来检查安全性的html表单。密码有效为NULL,但用户应该得到密码为空并且应该更新的警告。使用空白密码登录FW/1

每次页面加载时,我要警告密码是否为NULL。

我的问题是:哪里是做这个检查的最好的地方。布局文件是显示消息的地方,但我不认为布局文件应该查询数据库。

回答

0

如果意图是检查每个页面加载,那么Application.cfc文件的onRequestStart()方法看起来就像任何一个地方一样。您需要一些条件逻辑,以便在人员登录后才能开始执行检查,但这很简单。

此外,您可以使用会话变量来指示该人是否有密码。您不必每次都查询数据库。

-1

Onrequeststart建议。 另一个技巧是创建一个结构数组,在其中存储所有通知或警报以及其他信息(如警报类型或状态等),然后在您的视图中循环访问该数组并显示所有要使用的通知。 如果有任何警告会影响业务逻辑决策,那么你也可以在你的mvc的其他地方循环这个数组。

0

FW/1有一个名为setUpRequest()的方法,其功能类似于onRequestStart()。

你可以使用setUpRequest()来调用控制器,检查密码是否为NULL,并向请求上下文(rc)添加一条消息,然后在请求中的所有控制器和查看代码中都可以使用该消息。以下是我正在处理的应用程序中的一些示例代码。您可以使用安装控制器的默认方法轻松地检查密码。

function setupRequest(rc) { 
    if(structkeyExists(url, "reload")){ 
     setupApplication(); 
    } 
    controller('setup.default'); 
} 
+0

如果只需要检查一个子系统,您将如何使用这种方法? –

+0

我没有使用子系统,但我想在setup.default()中可以检查你所在的子系统。 –