<!--#include file="class/alipay_notify.asp"-->
<!--#include file="directlogin.asp"-->
<%
Function RegExpTest(patrn, strng)
  Dim regEx
  Set regEx = New RegExp
  regEx.Pattern = patrn
  regEx.IgnoreCase = False
  RegExpTest = regEx.Test(strng)
End Function 

Function FreeHost_Loginlog(username,type1)
Set connX=Server.CreateObject("ADODB.Connection")
	connX.Open Application("FreeHostDBlink")
	Set clientlog = Server.CreateObject("ADODB.Recordset")	
	Sqlclientlog="Select * from FreeHost.FreeHost_Loginlog"
	clientlog.Open Sqlclientlog,connX,3,2
	clientlog.addnew
clientlog("username")=username
clientlog("type1")=type1
clientlog("logintime")=NOW
clientlog("ip")=Request.ServerVariables("REMOTE_ADDR")
If Request.ServerVariables("HTTP_FreeHostAPIIP")<>"" Then clientlog("ip")=Request.ServerVariables("HTTP_FreeHostAPIIP")
clientlog.update
clientlog.close
connX.close
set connX=nothing
set clientlog=nothing
End Function


'计算得出通知验证结果
Set objNotify = New AlipayNotify
sVerifyResult = objNotify.VerifyReturn()

If sVerifyResult Then	'验证成功
	'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
	'请在这里加上商户的业务逻辑程序代码
	
	'——请根据您的业务逻辑来编写程序（以下代码仅作参考）——
    '获取支付宝的通知返回参数，可参考技术文档中页面跳转同步通知参数列表
    user_id = request.QueryString("user_id")	'支付宝用户id
    token	= request.QueryString("token")		'授权令牌
    real_name	= request.QueryString("real_name")		'授权令牌
	

If user_id="" or RegExpTest("[^A-Za-z0-9]",user_id) Or Len(user_id)<3 Then
	ef=True
	ec="user_id没填或非法！"
End if
If token="" or RegExpTest("[^A-Za-z0-9]",token) Then
	ef=True
	ec="token没填或非法！"
End if
If Not Application("fastlogin_usealipay")=True Then
	ef=True
	ec="管理员没启用本功能！"
End if
	'执行商户的业务程序
'	response.Write "验证成功<br />"
'	response.Write "token:"&token
'如果是已有id用户,直接调用登陆流程
'验证会员资格
If not ef then
Set conn=Server.CreateObject("ADODB.Connection")
	conn.Open Application("FreeHostDBlink")
  Set dsreg = Server.CreateObject("ADODB.Recordset")	
		Sql="Select * from FreeHost.FreeHost_USER where user_id='"&user_id&"' and fastlogin=1"
		if Instr(1,sql, ";", 1)>0 or Instr(1,sql, "--", 1)>0 then
Response.Write "非法字符！"
Response.End
end if
		dsreg.Open Sql,conn,1,3
If dsreg.Eof Then

If Len(user_id)>1 Then
session("fastlogin_token")=token
session("fastlogin_real_name")=real_name
session("fastlogin_user_id")=user_id
End If

'"会员名不存在！或没关联"
'如果没有id用户'
'提示:您首次在本网站使用支付宝快捷登陆,请您选择:

'让用户选:如果您以前已在本网站注册过用户名,请您将支付宝快捷登陆和原来的用户名关联,您以后就直接可以用支付宝号登陆.

'让用户选:如果您以前没有在本网站注册过用户名,请您在这儿创建立用户名,您以后就直接可以用支付宝号登陆.
%>
<!--#include file="logincontent.asp"-->
<%

Else
'调用登陆

If session("fastlogin_goto")="agent" then'进入代理区
fastlogin_agent=dsreg("username")
dsreg.close
session("fastlogin_goto")=""
dologinAgentFast
else'进入用户区
session("fastlogin_goto")=""
dologinuserFast
End if

end if
end If


'检查user_id合法性

'session("alipay_user_id")=user_id

if ef then
Response.Redirect "/user/e.asp?e="&ec
end if
	
	'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
else '验证失败
    '如要调试，请看alipay_notify.asp页面的VerifyReturn函数，比对sign和mysign的值是否相等，或者检查responseTxt有没有返回true
    response.Write "验证失败"
end If
%>

