一个贴子的回复不能超过30个,再开一贴,update更新问题??

pdysuny 2006-08-29 04:24:34
我需要做游戏点卡在线支付,自动弹出卡号和密码的.
点击"在线支付"后,通过了银行的扣款,返回反馈页面,买的卡弹出来了,表中字段used值为0为未出售卡,值1为已经出售卡.
问题:我在出售卡后,1赋值给used,但是结果把表中used=0全部更新为1了,而不是我需要卖出去的卡为1,请帮忙看下吧.我需要的是把卖出去的卡used设为1.


如下代码可以出卡,但是库中,未出售的卡都变未出售的了,也就是所有行的used都设为1了.

问题:如何使已经出售的卡的used设为1,而不是全部???

--------penglewen(昨日如梦) 兄,你的方法我试了,依然病态如故,全部设为1了,难道select top...不起作用??

set rs=server.CreateObject("adodb.recordset")
sql="select TOP "&cardcount&" * from card where id="&kaid&" and used=0 order by cardid desc"
rs.open sql,conn,3,3
if rs.eof And rs.bof then
response.write "<script language=javascript>alert('系统缺货!');window.close();</script>"
response.end
else
i=0
ii=""
do while not rs.eof
ii=ii&"卡号:"&rs("cardhao")&"   "
Response.Write "卡号:"&rs("cardhao")&"   "
ii=ii&"密码:"&rs("cardmima")&"<br>"
Response.Write "密码:"&rs("cardmima")&"<br>"

sql="update card set used=1 where cardid="&rs("cardid")&""
conn.execute(sql)
'如果conn.execute不能使用则运行以下指令
'rs("used")=1
'rs("card_dingdanid")=card_dingdanid
'rs.update
i=i+1
rs.movenext
loop


end if
rs.Close
set rs=nothing
response.write sql
...全文
504 35 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
35 条回复
切换为时间正序
请发表友善的回复…
发表回复
ck1983 2006-09-01
  • 打赏
  • 举报
回复
我也来发一句,我也写过支付宝接口,你应该是忘记了记录每类商品的数量。你在写卡的时候要记得用上那个买家下单的每类商品数量。
penglewen 2006-08-31
  • 打赏
  • 举报
回复
不会吧,这样你的信誉分会很低啊.......................
pdysuny 2006-08-31
  • 打赏
  • 举报
回复
格式没问题啊
pdysuny 2006-08-31
  • 打赏
  • 举报
回复
分还送不了啊
jamesyu123 2006-08-31
  • 打赏
  • 举报
回复
看看格式什么的有没有问题....
pdysuny 2006-08-31
  • 打赏
  • 举报
回复
那个帖结了,还是没解决,这个帖继续,可依然没解决啊,郁闷
pdysuny 2006-08-30
  • 打赏
  • 举报
回复
这样依然不行,还是更新了全部,哎

set rs=server.CreateObject("adodb.recordset")
sql="select top "&cardcount&" * from card where id="&kaid&" and used=0 order by cardid desc"
rs.open sql,conn,3,3

response.write "<script language=javascript>alert('系统缺货!');window.close();</script>"
response.end
else
sql1="update card set used=1 where cardid in (select TOP "&cardcount&" cardid from card where id="&kaid&" and used=0 order by cardid desc)"
conn.execute(sql1)
i=0
ii=""
do while not rs.eof
ii=ii&"卡号:"&rs("cardhao")&"   "
ii=ii&"密码:"&rs("cardmima")&"<br>"

i=i+1
rs.movenext
loop


end if
rs.Close
set rs=nothing
response.write ""&ii&"<br>"
response.write sql1
littlelam 2006-08-30
  • 打赏
  • 举报
回复
set rs=server.CreateObject("adodb.recordset")
sql="select TOP "&cardcount&" * from card where id="&kaid&" and used=0 order by cardid desc"
rs.open sql,conn,3,3
if rs.eof And rs.bof then
response.write "<script language=javascript>alert('系统缺货!');window.close();</script>"
response.end
else
sql="update card set used=1 where cardid in (select TOP "&cardcount&" cardid from card where id="&kaid&" and used=0 order by cardid desc)
conn.execute(sql)
end if
rs.Close
set rs=nothing
littlelam 2006-08-30
  • 打赏
  • 举报
回复
sql="update card set used=1 where cardid in (select TOP "&cardcount&" cardid from card where id="&kaid&" and used=0 order by cardid desc)
penglewen 2006-08-30
  • 打赏
  • 举报
回复
按照这位littlelam(竹子岌)(http://www.toaspx.com)
你把所有的SQL=SQl&"update card set used=1 where cardid="&rs("cardid")&""
等循环结束再执行的.这样应该不会改变do while 的条件了吧.
pdysuny 2006-08-30
  • 打赏
  • 举报
回复
littlelam(竹子岌)(http://www.toaspx.com):
给个开头吧
littlelam 2006-08-30
  • 打赏
  • 举报
回复
sql="select TOP "&cardcount&" * from card where id="&kaid&" and used=0 order by cardid desc"
sql="update card set used=1 where cardid="&rs("cardid")&""

当update的时候记录集改变了。。。do while 就会出错了。。。
你应该换一种方式写。。。
pdysuny 2006-08-30
  • 打赏
  • 举报
回复
response.write ""&ii&"<br>"
response.write ""&i&"<br>"
response.write ""&cardcount&"<br>"
response.write sql

执行后:
卡号:22 密码:22

1
1
update ty_card set used=1 where cardid=296

晕了,这里看只更新一个记录,但执行一次后,used都全部更新为1了?
chinastorm 2006-08-30
  • 打赏
  • 举报
回复
看似没错
pdysuny 2006-08-30
  • 打赏
  • 举报
回复
重新说明一下:
sql="select TOP "&cardcount&" * from card where id="&kaid&" and used=0 order by cardid desc"
中id为获得的产品编号,这里不可没有,cardid为card表中自动编号,used为判断项:0为未使用,1为已经使用。

cjl8882000(狂奔的蜗牛):
你的说法一一试过,无论我把update语句放在循环上面还是下面(不在循环内),无论我去掉循环do while 还是把计数i都去掉,都不能改变表中used全部更新为1的结果,超级郁闷中!!

之前的帖子已经发出100分求教,依然无法解决!请教了啊!!
li_net 2006-08-30
  • 打赏
  • 举报
回复
try

conn.execute("update card set used=1 where cardid="&rs("cardid")
penglewen 2006-08-30
  • 打赏
  • 举报
回复
那应该没错啊,满足这个条件的cardid=293 只有一条记录吧............
csecong 2006-08-30
  • 打赏
  • 举报
回复
sql="select TOP "&cardcount&" * from card where id="&kaid&" and used=0 order by cardid desc"

kaid代表什么意思啊?如果代表卡号的话难道有相同的卡么
如果代表卡类别就通顺了~

无法order by 的可能是cardid相同

你的代码应该没出什么问题吧,难道是有地方写错了,比如字段名?cardid
ATHENA112 2006-08-30
  • 打赏
  • 举报
回复
明显的逻辑问题,我估计你的表里面自动编号字段是cardid,而你习惯性地写id="&kaid&" ,因为后面是cardid排序。

sql="select TOP "&cardcount&" * from card where id="&kaid&" and used=0 order by cardid desc"
改为
sql="select TOP "&cardcount&" * from card where used=0 order by cardid desc"
即可。
li_net 2006-08-30
  • 打赏
  • 举报
回复
偶也支持 cjl8882000(狂奔的蜗牛)
加载更多回复(15)
为方便大家安装,这里还把最佳推荐的扩展打包为单独的扩展文件,如不喜欢自行卸载添加!

标签定制 CE版 Tab Mix Lite CE 不用多说了,大家期盼已久,支持FF3.0的版本终于复出了!再次感谢Mozine开发团队!还在等什么,赶快为你的FF装备吧!

继承父标签历史 tab_history 当一个标签链接到另标签时,父标签历史也会被继承到新标签!

进程清单 sessionpage 一国人制作的扩展,填补了该功能的空白,打开FF时仅仅载入一个上次浏览过的标签页清单,可以有选择的恢复,而不用载入所有未关闭的标签页。务必请关闭TMP进程管理,最好也不要启用FF内建的进程恢复。

集中边栏 all-in-one_sidebar 所有的管理面板添加到边栏,既美观,管理也方便

随处工具 TotalToolbar 刚刚推出的扩展,现在边栏/状态栏/标签栏也可以像工具栏一样拖拽管理按钮了,既可把按钮拖放到状态栏,标签栏和边栏目,OrganizeStatusBar 从此可以引退了

下载底栏 downbar 隐藏原来的大面板,用附加状态栏代替,有速度和大小显示,方便不少

下载分类download_sort 指定不同文件类型下载到不同的文件夹,不用每次都选择保存位置了

窗口分割 split_browser 她可以把你的FF分割成多个窗口多页面浏览,我家用22寸的宽屏就用她,爽阿!如果你有一个超大的宽屏显示,绝对推荐!!!

隐藏菜单 compact_menu 用一个图标来隐藏菜单栏,让你的界面更简约

下载增强 flashgot 有了她FF也可以用外部下载工具下载了

浏览兼容 IEtab 没了她还真不行,就拿丁丁地图来说 FF就不能正常显示

刷新重试 tryagain 是不是偶尔会遇到网页忙碌而无法访问,有了她不用你手动去刷新了,她会帮你定时刷新直到正常载入,已正式更新支持到3.0,增加了重试次数选择

随心拖曳 dragDeGo 比起SuperDragAndGo要更强,可自定义拖曳用途,所以觉得 Super更适合dragDeGo,注意这是修改版,拖曳到查找有些问题,最好修改掉

自动复制auto_copy 喜欢这个,比 auto_context 更强,你连单击都可以省了,选择文字即复制

一贴即转pasteandgo 把地址粘贴到地址栏或者搜索栏时不用再按按钮即执行转到

搜查合一 searchwp 可以把搜索栏当查找栏用的好东东,用了它才知道有多棒

文区缓存 textareaCache 是否有在提交文本区域之前页面却意外关闭,辛苦写的东西却没有保存下来,有了她会帮你定时保存,以防意外!

扫描更新 update_scanner 定时扫描指定页面的变化并提醒,用于监视自己发表的帖子随时知道新的回复

输入切换 tabimswitch 让各标签页记住自己的输入状态,转到地址栏是自动切换到英文

鼠标手势 firegestures 刚推出的鼠标手势,很小巧,喜欢鼠标手势的朋友又有新选择了

闪放由我 flashblock 默认阻挡Flash的播放,相应位置由播放按钮替换,自主的选择播放需要的Flash。

广告拦截 Adblock_Plus 比另一同名adblock plus好很多,对想要过滤对象轻轻一点,说声拜拜吧!

拦截增强 element_hiding_helper adblock plus 的增强扩展,可以拦截文字广告,不能单独安装

无界浏览 wjbutton 配合无界浏览(点击下载),代理浏览速度不错

填写助手 informenter 有了这位助手,填写表单的时候方便不少!

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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