动易PowerEasy_CMS2006_SP6_Express前后台登录时验证码及管理认证码的更改
作者:我就是个世界
发表于:2007-08-24
[color=#0000FF]1、如何去掉后台登录时的管理认证码?[/color]
答:在Admin\Admin_ChkCode.asp中修改,内有注释。
[code]<%
Const EnableSiteManageCode = False '是否启用后台管理认证码 是: True 否: False
Const SiteManageCode = "PowerEasy2006" '后台管理认证码,您可以修改成您的管理员认证码:×××××××××
'检查后台管理认证码[/code][separator]
[color=#0000FF]2、如何把登陆生成的验证码,改成5位或者4位的?[/color]
答:
(1)修改验证码文件 Inc/checkcode.asp 第15行、第41行 For i = 0 To 5,这是显示6位验证码的,如想显示4位,则改为 For i = 0 To 3。
(2)修改所有站中要输入验证码的地方,如后台登录处改Admin目录中的Admin_Login.asp文件中的137行中的<input name='CheckCode' size='6' maxlength='6' ,改为<input name='CheckCode' size='4' maxlength='4' 。
下面为要修改的页面:
Admin/Admin_Login.asp 文件中的137行
User/User_GetPassword.asp 文件中的100行
User/User_Login.asp 文件中的99行
UserLogin.asp 文件中的76行
Install.asp (78行,这个就不必改了。^_^)
(3)把下面提供的下载文件:Head.fix 放到网站根目录下的Images文件夹里(注意:因为这个Images文件夹里有同名的文件,但这个同名文件是启用6位验证码的文件,你可以把它改名,以备以后再启用6位验证码时能恢复使用)
点击下载4位的head文件
[sfile]attachment/200708/1187963740_0.rar[/sfile]
[color=#0000FF]3、第2个问题修改完以后,登录的验证码已经是4位的了,但是看不清楚怎么办?[/color]
答:动易2006版中,系统后台登陆的验证码效果一共提供了18种风格。
请修改INC/Checkcode.asp文件的第四行“NumCode(1) ”中()内的数值,括号中数字'注:1,4,7,10,13,16为黑白型 2,5,8,11,14,17为彩色背景型 3,6,9,12,15,18为噪点型。选一个自己喜欢的效果。
如果仍想要动易4.03版系统的验证码效果,只要把4.03中的Checkcode.asp和Images目录中的head.fix body.fix拷过去覆盖即可。
[color=#0000FF]4、如何把登陆生成的验证码,改成纯数字的?[/color]
答: 修改验证码文件 Inc/checkcode.asp 第16行 把rNum = CStr(CInt([color=#FF0000]9[/color] * Rnd)) 改为[color=#FF0000]35[/color]即可!
文件后面本身有注释:
[code] rNum = CStr(CInt(9 * Rnd)) '将35改为9即为使用纯数字密码[/code]
-------------------------------------------------
很多帖子提出来修改CheckCode.asp文件的几个参数,就可以修改验证码位数,但是经过实践,发现并不能够正确显示.现在发现问题本身是BMP文件头部的定义造成的.默认的Head.Fix文件定义了图片的尺寸位15*60像素,而改为4位验证码的话,就应该是15*40像素.所以关键要修改 Head.Fix文件里定义尺寸的参数.用UltraEdit打开Head.Fix文件,如图
[img]http://bbs.powereasy.net/skins/default/filetype/jpg.gif[/img]
此主题相关图片如下:
[img]http://bbs.powereasy.net/UploadFile/2008-3/20083213142618536.jpg[/img]
将3C 改为28 就是4位验证码的宽度,改为1E就是3位的,改为14就是2位的,改为32就是5位的,改为0A就是1位的.
这个文件修改后,再修改CheckCode.asp文件的几个参数就可以了.如下
[quote]
'得到验证码的字符串
Dim zimg([color=#ff0000]4[/color]), NStr [color=#ff0000]'这里由6改为4[/color]
Randomize Timer
For i = 0 To [color=#ff0000]3 '这里由5改为3[/color]
rNum = Fix([color=#ff0000]9[/color] * Rnd)[color=#ff0000] '将35改为9即为使用纯数字密码[/color]
zimg(i) = rNum
listnum = listnum & Mid(listcode, rNum + 1, 1)
Next
Session("CheckCode") = listnum
'*********************
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("../images/body" & CodeType & ".Fix")
Ados1.write Ados.Read([color=#ff0000]1920[/color]) [color=#ff0000]'这里由2880改为1920[/color]
For i = 0 To [color=#ff0000]3 '这里由5改为3[/color]
Ados.Position = (35 - zimg(i)) * 480
Ados1.Position = i * 480
Ados1.write Ados.Read(480)
Next
'得到图像头部信息
Ados.LoadFromFile Server.mappath("../images/head.fix")
Pos = LenB(Ados.Read())
'Ados.Position = Pos
'将头部信息与实体部分合并成横向排列
On Error Resume Next
For i = 0 To 15
For j = 0 To [color=#ff0000]3 '这里由5改为3
[/color] Ados1.Position = i * 32 + j * 480
Ados.Position = Pos + 30 * j + i * 270
Ados.write Ados1.Read(30)
Next
Next
[/quote]
还有在每个应用验证码的地方,将Input的 Size=6 改为 Size=4 maxlength=6 改为 4
如果不会修改Head.Fix文件,可以下载我修改好的Head.Fix文件如下(4位的)
[img]http://bbs.powereasy.net/skins/default/filetype/rar.gif[/img]
[url=http://bbs.powereasy.net/UploadFile/2008-3/20083214172322065.rar]点击浏览该文件[/url]
答:在Admin\Admin_ChkCode.asp中修改,内有注释。
[code]<%
Const EnableSiteManageCode = False '是否启用后台管理认证码 是: True 否: False
Const SiteManageCode = "PowerEasy2006" '后台管理认证码,您可以修改成您的管理员认证码:×××××××××
'检查后台管理认证码[/code][separator]
[color=#0000FF]2、如何把登陆生成的验证码,改成5位或者4位的?[/color]
答:
(1)修改验证码文件 Inc/checkcode.asp 第15行、第41行 For i = 0 To 5,这是显示6位验证码的,如想显示4位,则改为 For i = 0 To 3。
(2)修改所有站中要输入验证码的地方,如后台登录处改Admin目录中的Admin_Login.asp文件中的137行中的<input name='CheckCode' size='6' maxlength='6' ,改为<input name='CheckCode' size='4' maxlength='4' 。
下面为要修改的页面:
Admin/Admin_Login.asp 文件中的137行
User/User_GetPassword.asp 文件中的100行
User/User_Login.asp 文件中的99行
UserLogin.asp 文件中的76行
Install.asp (78行,这个就不必改了。^_^)
(3)把下面提供的下载文件:Head.fix 放到网站根目录下的Images文件夹里(注意:因为这个Images文件夹里有同名的文件,但这个同名文件是启用6位验证码的文件,你可以把它改名,以备以后再启用6位验证码时能恢复使用)
点击下载4位的head文件
[sfile]attachment/200708/1187963740_0.rar[/sfile]
[color=#0000FF]3、第2个问题修改完以后,登录的验证码已经是4位的了,但是看不清楚怎么办?[/color]
答:动易2006版中,系统后台登陆的验证码效果一共提供了18种风格。
请修改INC/Checkcode.asp文件的第四行“NumCode(1) ”中()内的数值,括号中数字'注:1,4,7,10,13,16为黑白型 2,5,8,11,14,17为彩色背景型 3,6,9,12,15,18为噪点型。选一个自己喜欢的效果。
如果仍想要动易4.03版系统的验证码效果,只要把4.03中的Checkcode.asp和Images目录中的head.fix body.fix拷过去覆盖即可。
[color=#0000FF]4、如何把登陆生成的验证码,改成纯数字的?[/color]
答: 修改验证码文件 Inc/checkcode.asp 第16行 把rNum = CStr(CInt([color=#FF0000]9[/color] * Rnd)) 改为[color=#FF0000]35[/color]即可!
文件后面本身有注释:
[code] rNum = CStr(CInt(9 * Rnd)) '将35改为9即为使用纯数字密码[/code]
-------------------------------------------------
很多帖子提出来修改CheckCode.asp文件的几个参数,就可以修改验证码位数,但是经过实践,发现并不能够正确显示.现在发现问题本身是BMP文件头部的定义造成的.默认的Head.Fix文件定义了图片的尺寸位15*60像素,而改为4位验证码的话,就应该是15*40像素.所以关键要修改 Head.Fix文件里定义尺寸的参数.用UltraEdit打开Head.Fix文件,如图
[img]http://bbs.powereasy.net/skins/default/filetype/jpg.gif[/img]
此主题相关图片如下:
[img]http://bbs.powereasy.net/UploadFile/2008-3/20083213142618536.jpg[/img]
将3C 改为28 就是4位验证码的宽度,改为1E就是3位的,改为14就是2位的,改为32就是5位的,改为0A就是1位的.
这个文件修改后,再修改CheckCode.asp文件的几个参数就可以了.如下
[quote]
'得到验证码的字符串
Dim zimg([color=#ff0000]4[/color]), NStr [color=#ff0000]'这里由6改为4[/color]
Randomize Timer
For i = 0 To [color=#ff0000]3 '这里由5改为3[/color]
rNum = Fix([color=#ff0000]9[/color] * Rnd)[color=#ff0000] '将35改为9即为使用纯数字密码[/color]
zimg(i) = rNum
listnum = listnum & Mid(listcode, rNum + 1, 1)
Next
Session("CheckCode") = listnum
'*********************
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("../images/body" & CodeType & ".Fix")
Ados1.write Ados.Read([color=#ff0000]1920[/color]) [color=#ff0000]'这里由2880改为1920[/color]
For i = 0 To [color=#ff0000]3 '这里由5改为3[/color]
Ados.Position = (35 - zimg(i)) * 480
Ados1.Position = i * 480
Ados1.write Ados.Read(480)
Next
'得到图像头部信息
Ados.LoadFromFile Server.mappath("../images/head.fix")
Pos = LenB(Ados.Read())
'Ados.Position = Pos
'将头部信息与实体部分合并成横向排列
On Error Resume Next
For i = 0 To 15
For j = 0 To [color=#ff0000]3 '这里由5改为3
[/color] Ados1.Position = i * 32 + j * 480
Ados.Position = Pos + 30 * j + i * 270
Ados.write Ados1.Read(30)
Next
Next
[/quote]
还有在每个应用验证码的地方,将Input的 Size=6 改为 Size=4 maxlength=6 改为 4
如果不会修改Head.Fix文件,可以下载我修改好的Head.Fix文件如下(4位的)
[img]http://bbs.powereasy.net/skins/default/filetype/rar.gif[/img]
[url=http://bbs.powereasy.net/UploadFile/2008-3/20083214172322065.rar]点击浏览该文件[/url]
请发表您的评论