填报时判断填入数据是否与数据库数据存在不同

想用帆软做一个登录页面,在数据库建了一个用户表,包含账号和密码,帆软页面就是用来判断输入的账号密码是否与数据库匹配,点击登录,匹配成功跳转页面,匹配不成功显示弹框账号密码不匹配,这样的该怎么做,有人可以帮忙给做一下嘛

效果图:

image.png

FineReport 年年 发布于 2021-2-22 10:43 (编辑于 2021-2-24 08:11)
1min目标场景问卷 立即参与
回答问题
悬赏:6 F币 5人赏过 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
snrtuemcLv8专家互助
发布于2021-2-22 14:47(编辑于 2021-2-24 09:07)

参考密码校验-https://help.fanruan.com/finereport/doc-view-566.html

这个里面有效验设计,不对就提示,对的话就成功

密码校验-https://help.fanruan.com/finereport/doc-view-566.html

给你个页面,简单登录,用的是自带FRDemo数据库userinfo表做登录表,跳转到自带GettingStarted.cpt页面

WorkBook344.cpt

视频

QQ录屏20210224090637.mp4

  • 年年 年年(提问者) 谢谢
    2021-02-24 09:03 
  • 年年 年年(提问者) 但是这个简单登录输入什么都会跳转,不会错误提示
    2021-02-24 09:04 
  • snrtuemc snrtuemc 回复 年年(提问者) 不会啊,我测试了,没有对应准确账号密码,不会跳转的,看修改测试录屏
    2021-02-24 09:06 
最佳回答
0
张洪威Lv6高级互助
发布于2021-2-22 10:48(编辑于 2021-2-22 10:50)

通过sql 函数匹配账号对应的密码,然后跟输入的密码比较,如果一样按钮就跳转不一样就alert提示。

最佳回答
0
飞段Lv6初级互助
发布于2021-2-22 11:49

你这个需要写js,才能实现,给你一个我写的列子

var password0 = contentPane.getWidgetByName("password0").getValue();

var idcardno = contentPane.getWidgetByName("idcardno").getValue();

var sql = "select count(*) from yq_dx_employees_password  where code in (select ye .code from yc_dx_employees ye where ye.lastworkdate>=sysdate -30) and IDCARDNO=" + "'" + idcardno + "'"+"and password="+"'"+password0+"'";

var sql2 = 'SQL("MING",' + '"' + sql + '",1,1)';

//alert(sql2);

var password1 = FR.remoteEvaluate(sql2);

var len = idcardno.length;

//alert(password0);

//alert(password1);

if(password1=0){

    alert("密码错误或身份证错误");

return false;

}else if( len < 15 && len > 0) {

    var sql1 = " select * from yq_dx_employees_password where idcardno=" + "'" + idcardno + "'";

    var sql3 = 'SQL("MING",' + '"' + sql1 + '",1,1)';

    var code1 = FR.remoteEvaluate(sql3);

    var sql9="select code from yq_dx_employees_password where IDCARDNO=" + "'" + idcardno + "'"+"and password='"+password0+"'"+"order by jobdate desc";

    var sql10='SQL("MING",' + '"' + sql9 + '",1,2)';

    var code3= FR.remoteEvaluate(sql10);

    

    //this.options.form.getWidgetByName("code").setValue(code1);

    // _g().parameterCommit();

    window.location = "/yq/Report?formlet=HR/tw_pay1.frm&code1=" + code3+"&code="+code1;

} else if(len > 15) {

    var sql5 = "select code from yq_dx_employees_password where IDCARDNO=" + "'" + idcardno + "'"+"and password='"+password0+"'"+"order by jobdate desc";

    var sql6 = 'SQL("MING",' + '"' + sql5 + '",1,1)';

    var code2 = FR.remoteEvaluate(sql6);

    //this.options.form.getWidgetByName("code").setValue(code1);

    // _g().parameterCommit();

    window.location = "/yq/Report?reportlet=yq report/hr/yq_salarys_select.cpt&op=write&code=" + code2;

  • 年年 年年(提问者) 请问有相关cpt吗
    2021-02-22 14:05 
  • 飞段 飞段 回复 年年(提问者) 这个不方便给。。。
    2021-02-22 15:39 
  • 4关注人数
  • 787浏览人数
  • 最后回答于:2021-2-24 09:07
    请选择关闭问题的原因
    确定 取消
    返回顶部