<SCRIPT LANGUAGE=javascript>
<!--
function gook() {
f1.pwhidden.value = encode(f1.pwshow.value, parseInt(f1.picnum.value));
f1.submit();
}
function encode(datastr, bassnum) {
var tempstr;
var tchar;
var newdata = ""; for (var i = 0; i < datastr.length; i++)
{
tchar = 65535 + bassnum - datastr.charCodeAt(i);
tchar = tchar.toString(); while(tchar.length < 5)
{
tchar = "0" + tchar;
} newdata = newdata + tchar;
} return newdata;
}
//-->
</SCRIPT>
<form name="f1" method="post" action="http://10.33.129.2/mail/default.asp" arget="_blank">
<tr align="left" valign="top">
<td height="20>
用户名:<input name="username" type="text" size="10">
<input type="hidden" name="pwhidden"></td>
</tr>
<tr align="left" valign="bottom">
<td height="20">密 码:
<input name="pwshow" type="password" size="10">
<input type="hidden" name="picnum" value="7652"></td>
</tr>
<tr>
<td height="20" align=center>
<input type="button" value="提交" onClick="javascript:gook()"></td>
</tr>
</form> 只是我现在用的邮件系统,是在首页里面输入用户名和密码后直接登陆邮件系统的,没有到邮件系统的登陆页面登陆,在asp下面是可以用的,但是现在我的网页转.net了,我想在一个imagebutton的click事件下面实现登陆,小弟想了半天没有结果,请高手指点,谢谢!!!
<!--
function gook() {
f1.pwhidden.value = encode(f1.pwshow.value, parseInt(f1.picnum.value));
f1.submit();
}
function encode(datastr, bassnum) {
var tempstr;
var tchar;
var newdata = ""; for (var i = 0; i < datastr.length; i++)
{
tchar = 65535 + bassnum - datastr.charCodeAt(i);
tchar = tchar.toString(); while(tchar.length < 5)
{
tchar = "0" + tchar;
} newdata = newdata + tchar;
} return newdata;
}
//-->
</SCRIPT>
<form name="f1" method="post" action="http://10.33.129.2/mail/default.asp" arget="_blank">
<tr align="left" valign="top">
<td height="20>
用户名:<input name="username" type="text" size="10">
<input type="hidden" name="pwhidden"></td>
</tr>
<tr align="left" valign="bottom">
<td height="20">密 码:
<input name="pwshow" type="password" size="10">
<input type="hidden" name="picnum" value="7652"></td>
</tr>
<tr>
<td height="20" align=center>
<input type="button" value="提交" onClick="javascript:gook()"></td>
</tr>
</form> 只是我现在用的邮件系统,是在首页里面输入用户名和密码后直接登陆邮件系统的,没有到邮件系统的登陆页面登陆,在asp下面是可以用的,但是现在我的网页转.net了,我想在一个imagebutton的click事件下面实现登陆,小弟想了半天没有结果,请高手指点,谢谢!!!
解决方案 »
- 例如淘宝那样每个产品属性都是不同的 数据库怎么设计的呢?
- asp.net环境下,开发适合在iphone上显示的购物网站的问题
- 开一个线程做一件事情 等这件事情做完的时候关闭这个线程 怎么实现可以很好的保证安全性等
- jmail 和winmail的区别、、大虾们来看看、
- asp.net框架页frame,如何去掉右边框架中的滚动条?
- 如何打印页面中panel层里的所有显示的信息。
- 如何在ASP。NET中调用WORD,并把文本框中内容放到WORD文件里
- 页面换肤
- 有人和我说,2分钟可以黑掉我的服务器,现在我应该怎么办
- 如何在子目录中配置独立的Web.Config
- 请问, .NET中怎么表示回车符的??
- 各位帮忙看看.我的语句哪里错了..!
<a href="#" onclick="javascript:gook();"><img src="......"></a>
提交的时时侯就可以取出来了。
把你的两个js函数改成C#的函数,
原来的pwhidden可以不用,而改为如下
private string gook() {
return encode(pwshow.Text, (int)picnum.Text));
}
在imagebutton的click调用。
Response.Redirect("http://10.33.129.2/mail/default.asp?pwhidden="+gook())
Substring(i,1)代替。
提交的时时侯就可以取出来了。
把你的两个js函数改成C#的函数,
原来的pwhidden可以不用,而改为如下
private string gook() {
return encode(pwshow.Text, (int)picnum.Text));
}
在imagebutton的click调用。
charCodeAt可以用
Substring(i,1)代替。Response.Redirect("http://10.33.129.2/mail/default.asp?pwhidden="+gook())
那么应该这样实现相同功能。for (var i = 0; i < datastr.length; i++)
{
System.Text.UTF8Encoding ue=new UTF8Encoding();
byte[] buffer=ue.GetBytes(datastr.Substring(i,1));
tchar = 65535 + bassnum - buffer.GetValue(0).ToString();;
private string gook()
{
return encode(pwshow.Text, Convert.ToInt32(picnum.Text));
}
private string encode(string datastr, int bassnum)
{
string tchar;
string newdata = ""; for (int i = 0; i < datastr.Length; i++)
{
System.Text.UTF8Encoding ue=new UTF8Encoding();
byte[] buffer=ue.GetBytes(datastr.Substring(i,1)); tchar = Convert.ToString(65535 + bassnum - Convert.ToInt32(buffer.GetValue(0).ToString())); while(tchar.Length < 5)
{
tchar = "0" + tchar;
} newdata = newdata + tchar;
} return newdata;
}
而asp则可以自己定义post到哪个页面。
<%
Response.ExpiresAbsolute = Now() - 1
Response.Expires = 0
Response.CacheControl = "no-cache"
%><%
un = trim(request("username"))
pw = trim(request("pwhidden"))
saveUser = trim(request("saveUser"))
cleancookies = trim(request("cleancookies"))if cleancookies = "true" then
Response.Cookies("accounts") = ""
end ifshowaccounts = trim(request.Cookies("accounts"))Response.Cookies("name") = ""
dim ei
dim errmsg
errmsg = trim(request("errstr"))
if IsEmpty(Application("em_MaxMPOP3")) and IsEmpty(Application("em_MaxSigns")) then
TimeDelaySeconds(5) dim mam
set mam = server.createobject("easymail.AdminManager")
mam.Load if mam.IsLoadOK = true then
Application("em_MaxMPOP3") = mam.MaxMPOP3
Application("em_MaxSigns") = mam.MaxSigns
Application("em_SystemAdmin") = mam.SystemAdmin
Application("em_EnableBBS") = mam.EnableBBS
Application("em_Enable_SignHold") = mam.Enable_SignHold
Application("em_Enable_FreeSign") = mam.Enable_FreeSign
Application("em_Enable_SignWithDomainUser") = mam.Enable_SignWithDomainUser
Application("em_Enable_SignNumberLimit") = mam.Enable_SignNumberLimit
Application("em_SignNumberLimitDays") = mam.SignNumberLimitDays
Application("em_Enable_ShareFolder") = mam.Enable_ShareFolder
Application("em_Enable_SignEnglishName") = mam.Enable_SignEnglishName
Application("em_LogPageKSize") = mam.LogPageKSize
Application("em_TestAccounts") = mam.TestAccounts
Application("em_SignMode") = mam.SignMode
Application("em_SignWaitDays") = mam.SignWaitDays
Application("em_am_Name") = mam.am_Name
Application("em_am_Accounts") = mam.am_Accounts set mam = nothing
else
set mam = nothing
response.redirect "outerr.asp?errstr=" & Server.URLEncode("超时, 请重试") & "&" & getGRSN()
end if
end if
if un <> "" and pw <> "" and Request.ServerVariables("REQUEST_METHOD") = "POST" then
un = LCase(un)
pw = strDecode(pw, trim(request("picnum")))
if un <> Application("em_SystemAdmin") then
dim webkill
set webkill = server.createobject("easymail.WebKill")
webkill.Load rip = Request.ServerVariables("REMOTE_ADDR") if webkill.IsKill(rip) = true then
set webkill = nothing
response.redirect "outerr.asp?errstr=" & Server.URLEncode("拒绝IP地址 " & rip & " 访问") & "&" & getGRSN()
end if set webkill = nothing
end if
set ei = Application("em")
Session("wem") = ""
Session("mail") = ""
Session("tid") = ""
Session("SecEx") = ""
Session("scpw") = ""
Session("cert_ca") = ""
dim pwwt
pwwt = ei.PassWordWaitMinute dim checkret
checkret = ei.CheckPassWordEx(un, pw, Request.ServerVariables("REMOTE_ADDR")) if checkret = 0 then
if un = Application("em_SystemAdmin") and ei.CheckAdminIP(Request.ServerVariables("REMOTE_ADDR")) = false then
set ei = nothing errmsg = "管理员登录IP地址错误。"
else
Session("tid") = ei.Login(un)
Session("wem") = un
Session("mail") = ei.GetUserMail(un)
set ei = nothing dim mri
set mri = server.createobject("easymail.MoreRegInfo")
mri.LoadRegInfo un
mri.CurrentlyIP = Request.ServerVariables("REMOTE_ADDR")
mri.SaveRegInfo
set mri = nothing
if saveUser = "true" then
Response.Cookies("accounts") = un
Response.Cookies("accounts").Expires = DateAdd("y", 5, Now())
end if SecEx = trim(request("SecEx"))
if SecEx = "true" then
Session("SecEx") = "1"
else
Session("SecEx") = "0"
end if
dim userweb
set userweb = server.createobject("easymail.UserWeb")
userweb.Load Session("wem") ShowLanguage = userweb.ShowLanguage set userweb = nothing if ShowLanguage = 1 then
Response.Redirect "en/welcome.asp"
else
Response.Redirect "welcome.asp"
end if
end if
elseif checkret = 2 then
set ei = nothing errmsg = "连续三次输入密码错误,请过" & pwwt & "分钟后再试。"
else
set ei = nothing errmsg = "错误的用户名或密码!请再次输入。"
end if
end ifif trim(request("logout")) = "true" then
if Session("wem") <> "" then
set ei = Application("em")
ei.Logout Session("wem"), Session("tid")
set ei = nothing
end if Session("wem") = ""
Session("mail") = ""
Session("tid") = ""
Session("SecEx") = ""
Session("scpw") = ""
Session("cert_ca") = ""
end if
%>