pb初级问题

miss_chen106 2010-04-05 04:44:12
请指教。
下面是一个登陆窗口。但当输入口令和密码,点击“登陆”时。没反应。。。
一下代码是在“登陆”按钮的clickd()事件。
本人刚学pb,不懂,请大虾指教,谢谢
string pw
int n
select "密码"
into:pw
from "guanliyuan"
where "guanliyuan"."口令"=:sle_name.text and "guanliyuan"."密码"=:sle_code.text;
if sle_name.text=trim(pw) then
n=n+1
if sqlca.sqlcode=0 then
open(w_denglu_user)
close(parent)
elseif n=3 then
messagebox('警告','你已达到最大次数,不能登录')
close(parent)
else
sle_name.text=''
sle_code.text=''
messagebox('警告','口令或密码输入错误')
end if
end if
...全文
121 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
A啦Dbit 2010-05-05
  • 打赏
  • 举报
回复
呵呵,刚看到!!
miss_chen106 2010-04-09
  • 打赏
  • 举报
回复
【解决了】
String ls_pw
String ls_num,ls_code
ls_num = trim(sle_num.Text)
ls_code = trim(sle_code.Text)

IF ls_num = ''THEN
MessageBox('提醒','请输入用户名和密码')
RETURN
END IF

select 密码 INTO :ls_pw
from card
Where 卡号 = :ls_num;

if sqlca.sqlcode = -1 then //如果数据库事务错误,直接退出
messagebox('警告','sqlca事务错误' + sqlca.sqlerrtext)
close(parent)
end if


IF SQLCA.SQLCode = 100 THEN //没找到用户//
n ++ //错误计数器累加
MessageBox('提醒','错误的用户名或密码') //其实是没有找到这个用户名
GOTO Error
END IF


//如果你允许空密码的话,而你的数据密码的字段允许NULL
IF IsNull(ls_pw) THEN ls_pw = ''

IF trim(ls_pw)<>ls_code THEN//输入的密码和数据库里的密码对不上
MessageBox('提醒','错误的密码,请重新输入')
n++
GOTO Error
END IF
//排除以上错误的情况后肯定密码对上了
Open(w_main)
Close(PARENT)
RETURN
Error:
IF n = 3 THEN
MessageBox('提醒','你已达到最大次数,不能登录')
Close(PARENT)
END IF
fjgzqjh 2010-04-06
  • 打赏
  • 举报
回复
加個 messagebox('1',sqlca.sqlerrtext) 看看,有沒有什麼錯誤
miss_chen106 2010-04-06
  • 打赏
  • 举报
回复
我连了,
谁帮帮我啊!
[Quote=引用 9 楼 dahaidao 的回复:]
难道是数据库没有连接上?
[/Quote]
dahaidao 2010-04-06
  • 打赏
  • 举报
回复
难道是数据库没有连接上?
miss_chen106 2010-04-06
  • 打赏
  • 举报
回复
这是什么错?
我对pb一无所知。
请高手指点。
[Quote=引用 8 楼 miss_chen106 的回复:]
运行时跳出“错误','交互密码验证错误:'+sqlca.sqlerrtext)”
是什么原因呢?

引用 7 楼 wag_enu 的回复:
假设:sle_name 是用户名的输入框, 而sle_code 是密码的输入框,
那么可以这么写试试:

C/C++ code

///先定义窗口的实例变量 ii_n

string pw

select "密码"
into :pw……
[/Quote]
zgda1234 2010-04-06
  • 打赏
  • 举报
回复
一步一步调找!
PB菜鸟 2010-04-06
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 fjgzqjh 的回复:]
或者 用debug 看看到哪沒反應的
[/Quote]
debug
fjgzqjh 2010-04-06
  • 打赏
  • 举报
回复
或者 用debug 看看到哪沒反應的
miss_chen106 2010-04-05
  • 打赏
  • 举报
回复
运行时跳出“错误','交互密码验证错误:'+sqlca.sqlerrtext)”
是什么原因呢?
[Quote=引用 7 楼 wag_enu 的回复:]
假设:sle_name 是用户名的输入框, 而sle_code 是密码的输入框,
那么可以这么写试试:

C/C++ code

///先定义窗口的实例变量 ii_n

string pw

select "密码"
into :pw
from "guanliyuan"
where "guanliyuan"."口令"=:sle_name.text and "guanl……
[/Quote]
wag_enu 2010-04-05
  • 打赏
  • 举报
回复
假设:sle_name 是用户名的输入框, 而sle_code 是密码的输入框,
那么可以这么写试试:

///先定义窗口的实例变量 ii_n

string pw

select "密码"
into :pw
from "guanliyuan"
where "guanliyuan"."口令"=:sle_name.text and "guanliyuan"."密码"=:sle_code.text using sqlca;

if sqlca.sqlcode = 0 then
if sle_code.text = pw then
open(w_denglu_user)
close(parent)
elseif ii_n < 3 then
ii_n ++
sle_name.text=''
sle_code.text=''
messagebox('警告','口令或密码输入错误')
else
messagebox('警告','你已达到最大次数,不能登录')
close(parent)
end if
else
messagebox('错误','交互密码验证错误:'+sqlca.sqlerrtext)
close(parent)
end if
miss_chen106 2010-04-05
  • 打赏
  • 举报
回复
if sle_name.text=trim(pw) then

-->

if sle_code.text=trim(pw) then

也不行。
miss_chen106 2010-04-05
  • 打赏
  • 举报
回复
还是没反应,我要疯了。
能帮我再看看么?
[Quote=引用 4 楼 dawugui 的回复:]
if sle_name.text=trim(pw) then

-->

if trim(pw) = sle_name.text then
[/Quote]
dawugui 2010-04-05
  • 打赏
  • 举报
回复
if sle_name.text=trim(pw) then

-->

if trim(pw) = sle_name.text then
miss_chen106 2010-04-05
  • 打赏
  • 举报
回复
我改了
但还是不行,没反应。
当我把“if sle_name.text=trim(pw) then”和一个“end if”隐去时,点击“登陆”就会跳出'口令或密码输入错误'的警告。请帮帮忙。
[Quote=引用 2 楼 dawugui 的回复:]
select "密码"
into:pw
from "guanliyuan"
where "guanliyuan"."口令"=:sle_name.text and "guanliyuan"."密码"=:sle_code.text;

-->
string name , code
name = sle_name.text
code = sle_code.text

s……
[/Quote]
dawugui 2010-04-05
  • 打赏
  • 举报
回复
select "密码"
into:pw
from "guanliyuan"
where "guanliyuan"."口令"=:sle_name.text and "guanliyuan"."密码"=:sle_code.text;

-->
string name , code
name = sle_name.text
code = sle_code.text

select 密码
into:pw
from guanliyuan
where 口令=:name and 密码=:code;
乐于编程 2010-04-05
  • 打赏
  • 举报
回复
感觉是楼主的 select 语句有问题。

743

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 脚本语言
社区管理员
  • 脚本语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧