| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2035 人关注过本帖
标题:vfp程序制作登录界面,在选择用户类型是出现问题
只看楼主 加入收藏
wyyq
Rank: 1
等 级:新手上路
帖 子:197
专家分:0
注 册:2013-2-11
收藏
得分:0 
感谢tlliqi的回答!不过我想对用户名和密码可以同时输入字母和数字,不能输入其他字符。而且密码最少要6位
2013-02-11 17:29
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:1 
以下是引用wyyq在2013-2-11 17:24:17的发言:

如过字母和数字都能输,其他字符不能输入怎么解决
在TEXT1的VALID事件中判断输入的字符是否符合要求,如果不符合要求,重新输入。

坚守VFP最后的阵地
2013-02-11 17:55
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:1 
以下是引用wyyq在2013-2-11 17:29:29的发言:

感谢tlliqi的回答!不过我想对用户名和密码可以同时输入字母和数字,不能输入其他字符。而且密码最少要6位
密码长度一般是固定的,如果楼主非要密码至少6位,也可以在TEXT1的VALID事件中判断。

坚守VFP最后的阵地
2013-02-11 17:57
wyyq
Rank: 1
等 级:新手上路
帖 子:197
专家分:0
注 册:2013-2-11
收藏
得分:0 
请问怎么设置呢?代码怎么写?
2013-02-11 18:03
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:1 
以下是引用wyyq在2013-2-11 12:17:56的发言:

locate for allt(用户名)==allt(username)
if found() == .T.
   if allt(密码) == allt(userpassword)
      locate for usertype==权限
         if found () == .T.
            thisform.release
            do form 主界面.scx
         else
            messagebox("用户名或密码错误",48,"登录提示")
            times=times-1   
         endif
    endif
endif     

为什么没进行权限的判断就可以进入主界面
这段代码改成如下代码试下
程序代码:
SELECT 用户名,密码,权限 FROM 密码表 WHERE ALLTRIM(用户名)+ALLTRIM(密码)+ALLTRIM(权限)==ALLTRIM(username)+ALLTRIM(userpassword)+ALLTRIM(usertype) INTO CURSOR TEMP
IF RECCOUNT([TEMP])=1
   THISFORM.RELEASE
   do form 主界面.scx
ELSE
   messagebox("用户名或密码错误",48,"登录提示")
   times=times-1  
ENDIF

坚守VFP最后的阵地
2013-02-11 18:06
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:3 
以下是引用wyyq在2013-2-11 18:03:45的发言:

请问怎么设置呢?代码怎么写?
如果只允许输入数字与字母,并且宽度至少为6位
程序代码:
TEXT1.VALID事件代码
CSTR=ALLTRIM(THIS.VALUE)
NLEN=LEN(CSTR) &&记录输入的密码长度
CSTR=CHRTRANC(CHRTRANC(CSTR,[ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789],[]),[]) &&判断密码是否是字母或数字
IF NOT INLIST(LEN(CSTR),NLEN)
   MESSAGEBOX([密码中含有非字母与数字字符])
   RETURN 0
ENDIF

坚守VFP最后的阵地
2013-02-11 18:14
wzxc
Rank: 9Rank: 9Rank: 9
来 自:齐鲁大地
等 级:贵宾
威 望:39
帖 子:985
专家分:1296
注 册:2006-4-25
收藏
得分:1 
哪里这么麻烦!
文本框的InputMask 属性,设置6个"n"

认真看书学习,弄通Fox主义。
2013-02-11 18:17
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:1 
以下是引用wzxc在2013-2-11 18:17:53的发言:

哪里这么麻烦!
文本框的InputMask 属性,设置6个"n"
这个属性值VFP6中是没有的

坚守VFP最后的阵地
2013-02-11 18:20
wyyq
Rank: 1
等 级:新手上路
帖 子:197
专家分:0
注 册:2013-2-11
收藏
得分:0 
CSTR=CHRTRANC(CHRTRANC(CSTR,[ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789],[]),[])提示参数太少,我是初学者不是很明白
2013-02-11 18:26
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:2 
以下是引用wyyq在2013-2-11 18:26:52的发言:

CSTR=CHRTRANC(CHRTRANC(CSTR,[ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789],[]),[])提示参数太少,我是初学者不是很明白
CSTR=CHRTRANC(CSTR,CHRTRANC(CSTR,[ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789],[]),[])
不好意思,少写了个CSTR
看下这个CHRTRANC()的用法,
A=CHRTRANC(CSTR,[ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789],[])
?A
?CHRTRANC(CSTR,A,[])
分解后看下结果,就明白了。

坚守VFP最后的阵地
2013-02-11 18:33
快速回复:vfp程序制作登录界面,在选择用户类型是出现问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023385 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved