ASP 验证码图片成XX

2u+ 2010-07-31 02:39:11
帮朋友改个ASP网站
对ASP可谓是一点都不熟

但代码嘛,都差不多,就是细节的差别罢了
进入正题

原本他网站部署到外网是正常的
可是我从FTP上down下来后
在IIS7下部署好了,打开网站是正常的,就是登陆后台的验证码的图片成了XX

贴下验证码的code,各位ASP大侠们帮帮忙看看,是哪里出问题了哈

<%
Option Explicit
Response.buffer=true
NumCode
Function NumCode()
Response.Expires = -1
Response.AddHeader "Pragma","no-cache"
Response.AddHeader "cache-ctrol","no-cache"
On Error Resume Next
Dim zNum,i,j
Dim Ados,Ados1
Randomize timer
zNum = cint(8999*Rnd+1000)
Session("CheckCode") = zNum
Dim zimg(4),NStr
NStr=cstr(zNum)
For i=0 To 3
zimg(i)=cint(mid(NStr,i+1,1))
Next
Dim Pos
Set Ados=Server.CreateObject("Adodb.Stream")
Ados.Mode=3
Ados.Type=1
Ados.Open
Set Ados1=Server.CreateObject("Adodb.Stream")
Ados1.Mode=3
Ados1.Type=1
Ados1.Open
Ados.LoadFromFile(Server.mappath("../image/body.Fix"))
Ados1.write Ados.read(1280)
For i=0 To 3
Ados.Position=(9-zimg(i))*320
Ados1.Position=i*320
Ados1.write ados.read(320)
Next
Ados.LoadFromFile(Server.mappath("../image/head.fix"))
Pos=lenb(Ados.read())
Ados.Position=Pos
For i=0 To 9 Step 1
For j=0 To 3
Ados1.Position=i*32+j*320
Ados.Position=Pos+30*j+i*120
Ados.write ados1.read(30)
Next
Next
Response.ContentType = "image/BMP"
Ados.Position=0
Response.BinaryWrite Ados.read()
Ados.Close:set Ados=nothing
Ados1.Close:set Ados1=nothing
If Err Then Session("CheckCode") = 9999
End Function
%>
...全文
217 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
2u+ 2010-08-09
  • 打赏
  • 举报
回复
额,解决了,忘了来说了
不是路径这种低级问题
竟然是IIS的asp没开启父路径
哎。
lbcleo 2010-08-03
  • 打赏
  • 举报
回复
如果你确定路径没错,那就看看图片什么格式
001007009 2010-08-02
  • 打赏
  • 举报
回复
看看!!
asdevil520 2010-08-02
  • 打赏
  • 举报
回复

Ados.LoadFromFile(Server.mappath("../image/body.Fix"))

Ados.LoadFromFile(Server.mappath("../image/head.Fix"))

改成
Ados.LoadFromFile(Server.mappath("body.Fix"))

Ados.LoadFromFile(Server.mappath("head.Fix"))
只要code.asp和body.Fix,head.Fix在同一个文件夹就行了
魔咒 2010-08-02
  • 打赏
  • 举报
回复
是动态生成的图片,不是每个数字都做好了的,应该是你的浏览器问题,因为生成的是PNG类型,你需要注册PNG图片插件
孟子E章 2010-08-02
  • 打赏
  • 举报
回复
直接浏览器地址输入http://xxxx/img.asp(验证码文件)显示的是什么错误
z109876543210 2010-08-02
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 qq43695548 的回复:]
("../image/body.Fix

("../image/head.fix

这2个文件要有,路径还要对
[/Quote]


编码也有可能,另存为 ansi
SNOYC 2010-08-02
  • 打赏
  • 举报
回复
是不是直接拷贝了个别人的函数来用的啊,等把image文件夹也拷贝过来
caizhuguanguan 2010-08-02
  • 打赏
  • 举报
回复
认真看下 路径
gaoru 2010-08-02
  • 打赏
  • 举报
回复
我是纯粹来学习的.呵呵
孟子E章 2010-08-02
  • 打赏
  • 举报
回复
把那些包含文件都放在一个文件里进行测试
2u+ 2010-08-02
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 net_lover 的回复:]
直接浏览器地址输入http://xxxx/img.asp(验证码文件)显示的是什么错误
[/Quote]

没报什么错,在IE8调试可调试状态下打开,没报错,就是图片是XX
2u+ 2010-08-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 chinmo 的回复:]
应该是路径不对
调用的代码那好好看
[/Quote]
路径没问题的,在外网下是好好的
但是在自己的IIS7下部署,就是验证码出不来,其他的都好好的
qq43695548 2010-08-01
  • 打赏
  • 举报
回复
("../image/body.Fix

("../image/head.fix

这2个文件要有,路径还要对
qinjianer 2010-08-01
  • 打赏
  • 举报
回复
肯定是图片路径不对,验证码的每个字符都是预先定好的小图片,你这个现实X,肯定是图片路径不对!
  • 打赏
  • 举报
回复
应该是路径不对
调用的代码那好好看
2u+ 2010-07-31
  • 打赏
  • 举报
回复
敢情没人懂吗?

28,404

社区成员

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

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