⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shopchannel.asp

📁 网络上经典的图片程序
💻 ASP
📖 第 1 页 / 共 5 页
字号:

		HtmlContent = Newasp.HtmlContent
		HtmlContent = Replace(HtmlContent, "{$ChannelRootDir}", ChannelRootDir)
		HtmlContent = Replace(HtmlContent, "{$InstallDir}", strInstallDir)
		HtmlContent = Replace(HtmlContent, "{$ChannelID}", ChannelID)
		HtmlContent = Replace(HtmlContent, "{$ModuleName}", Newasp.ModuleName)
		HtmlContent = Replace(HtmlContent, "{$ShopIndex}", strIndexName)
		
		arrChinaeBank = Split(Newasp.ChinaeBank, "|||")

		Set wp = New WebPayment_Cls
		wp.PayPlatform = CInt(Newasp.StopBankPay)		'--选择在线支付银行
		wp.Paymentid = Trim(arrChinaeBank(0))			'--在线支付ID
		wp.Paymentkey = Trim(arrChinaeBank(1))			'--在线支付KEY
		wp.Percent = Newasp.CheckNumeric(arrChinaeBank(2))	'--在线支付手续费
		wp.ReceivePage						'--执行在线支付
		OrderForm = Newasp.CheckInfuse(wp.Orderid,35)		'--返回订单号
		PaymentMoney = CCur(wp.Paymoney)			'--返回支付金额
		BuyMoney = CCur(wp.Buymoney)				'--返回减去手续费后的金额
		ServiceCharge = CCur(wp.ServiceCharge)			'--返回手续费
		Consignee = Newasp.CheckInfuse(wp.Consignee,35)		'--返回订货人姓名
		Readme = Newasp.CheckRequest(wp.Comment,220)		'--返回订货说明
		errcode = CInt(wp.ErrNumber)				'--返回错误代码,0=成功
		If errcode > 0 Then ErrorMsg = wp.Description		'--返回错误信息
		'--检验返回订单号是否正确
		Set Rs = Newasp.Execute("SELECT id,totalmoney,PayDone FROM NC_OrderForm WHERE OrderID='"& OrderForm &"'")
		If Rs.BOF And Rs.EOF Then
			ErrorMsg ="非法操作,订单号不正确!!!"
			errcode = 1
		Else
			'--如果返回的金额和提交时的金额不符,返回错误
			If BuyMoney <> Rs("totalmoney") Then
				ErrorMsg ="非法操作,交易金额不对!!!"
				errcode = 1
			End If
			'--判断是否重复提交数据
			If Rs("PayDone") > 0 Then
				ErrorMsg ="此次交易已经成功,请不要重复提交数据!!!"
				errcode = 1
			End If
		End If
		Set Rs = Nothing
		If errcode = 0 Then
			'--如果在支付成功
			HtmlContent = Replace(HtmlContent, "{$PageTitle}", "在线支付成功")
			strContent = Newasp.HtmlSetting(13)
			strContent = Replace(strContent, "{$ReceiveTiele}", "成功")
			strContent = Replace(strContent, "{$OrderID}", OrderForm)
			strContent = Replace(strContent, "{$PayMoney}", FormatNumber(PaymentMoney,2,-1))
			strContent = Replace(strContent, "{$BuyMoney}", FormatNumber(BuyMoney,2,-1))
			strContent = Replace(strContent, "{$ServiceCharge}", FormatNumber(ServiceCharge,2,-1))
			strContent = Replace(strContent, "{$DateTime}", Now())
			strContent = Replace(strContent, "{$ErrorMsg}", "")
			strContent = Replace(strContent, "{$PayState}", "恭喜您!本交易完成。")
			'--支付成功后开始更新数据库state
			'--更新订单处理状态
			Newasp.Execute ("UPDATE NC_OrderForm SET Paymode='网上支付',PayDone=1 WHERE OrderID='"& OrderForm &"'")
			'--如果是会员更新会员消费记录
			If Newasp.memberid > 0 Then
				Newasp.Execute ("UPDATE NC_User SET prepaid=prepaid+" & BuyMoney & " WHERE UserName='"& UserName &"' And userid=" & userid)
			End If
			'--添加相关交易明细表
			If Trim(Consignee) = "" Then
				If userid > 0 Then
					Consignee = Username
				Else
					Consignee = "匿名用户"
				End If
			End If
			Set Rs = CreateObject("ADODB.Recordset")
			SQL = "SELECT * FROM NC_Account WHERE (AccountID is null)"
			Rs.Open SQL,Conn,1,3
			Rs.addnew
				Rs("payer").Value = Consignee
				Rs("payee").Value = Newasp.CheckRequest(Newasp.SiteName,20)
				Rs("product").Value = "网上购物"
				Rs("Amount").Value = 1
				Rs("unit").Value = "次"
				Rs("price").Value = BuyMoney
				Rs("TotalPrices").Value = PaymentMoney
				Rs("DateAndTime").Value = Now()
				Rs("Accountype").Value = 0
				Rs("Explain").Value = Readme
				Rs("Reclaim").Value = 0
			Rs.update
			Rs.Close:Set Rs = Nothing
		Else
			'--如果支付失败
			HtmlContent = Replace(HtmlContent, "{$PageTitle}", "在线支付失败")
			strContent = Newasp.HtmlSetting(16)
			strContent = Replace(strContent, "{$ErrorMsg}", ErrorMsg)
			strContent = Replace(strContent, "{$ReceiveTiele}", "失败")
			strContent = Replace(strContent, "{$OrderID}", OrderForm)
			strContent = Replace(strContent, "{$PayMoney}", FormatNumber(PaymentMoney,2,-1))
			strContent = Replace(strContent, "{$BuyMoney}", FormatNumber(BuyMoney,2,-1))
			strContent = Replace(strContent, "{$ServiceCharge}", FormatNumber(ServiceCharge,2,-1))
			strContent = Replace(strContent, "{$DateTime}", Now())
			strContent = Replace(strContent, "{$PayState}", "对不起!本交易失败。")
		End If
		Set wp = Nothing
		
		HtmlContent = Replace(HtmlContent, "{$PublicContent}", strContent)
		ReplaceString
		Response.Write HtmlContent
	End Sub
	'///---在线支付返回过程结束
	'=================================================
	'过程名:ShowPaginate
	'作  用:商城收藏夹分页
	'=================================================
	Public Function ShowPaginate(ByVal str,ByVal CurrentPage,ByVal Pcount,ByVal totalrec,ByVal maxperpage)
		Dim strTempage
		strTempage = str
		strTempage = Replace(strTempage, "{$CurrentPage}", CurrentPage)
		strTempage = Replace(strTempage, "{$PageCount}", Pcount)
		strTempage = Replace(strTempage, "{$Totalrec}", totalrec)
		strTempage = Replace(strTempage, "{$totalrec}", totalrec)
		strTempage = Replace(strTempage, "{$MaxPerPage}", maxperpage)
		ShowPaginate = strTempage
	End Function
	'///---商品收藏夹过程开始
	'=================================================
	'过程名:BuildFavorite
	'作  用:商城收藏夹
	'=================================================
	Public Sub BuildFavorite()
		
		Dim strContent,ErrorMsg
		Dim userid,UserName,Action,i,j
		Dim maxfavsize,strTopNum,strPagination
		Dim maxperpage,CurrentPage,Pcount,totalrec,page_count
		Dim StyleList,favcount,FavoriteHint,shopid
		
		userid = Clng(Newasp.memberid)
		UserName = Newasp.CheckRequest(Newasp.membername,45)
		Action = LCase(Newasp.CheckInfuse(Request("action"),8))
		skinid = CLng(Newasp.ChannelSkin)
		maxfavsize = CLng(Newasp.GroupSetting(36))

		If maxfavsize > 0 Then
			strTopNum = "TOP " & maxfavsize
			FavoriteHint = "您的收藏夹最多可以存放 <font color=""red""><b>" & maxfavsize & "</b></font> 件商品!"
		Else
			strTopNum = ""
			FavoriteHint = "您的收藏夹大小无限制!"
		End If
		'--权限设置
		If userid = 0 Or UserName = "" Then
			Call OutAlertScript("对不起!只有注册会员才能使用收藏功能。")
			Exit Sub
		End If
		If CInt(Newasp.GroupSetting(35)) = 0 Then
			Call OutAlertScript("对不起!你没有使用收藏夹的权限。")
			Exit Sub
		End If
		
		Select Case Action
		Case "del"
			If userid = 0 Or Newasp.ChkNumeric(Request("favid")) = 0 Then
				ErrorMsg = "您没有选择收藏ID,或者你没有登录。"
				FoundErr = True
			End If
			If FoundErr = False Then
				Newasp.Execute("DELETE FROM NC_Favourite WHERE userid="& userid &" And favid="& Newasp.ChkNumeric(Request("favid")))
				Response.Redirect("favorite.asp")
			End If
		Case "add"
			If FoundErr = False Then
				Call AddFavorite
				Response.Redirect("favorite.asp")
			End If
		Case "modify"
			shopid = Newasp.ChkNumeric(Request("shopid"))
			If userid = 0 Or shopid = 0 Then
				ErrorMsg = "您没有选择商品ID,或者你没有登录。"
				FoundErr = True
			End If
			If FoundErr = False Then
				SQL = "SELECT shopid,TradeName,NowPrice FROM [NC_ShopList] WHERE ChannelID=" & ChannelID & " And isAccept > 0 And shopid=" & shopid
				Set Rs = Newasp.Execute(SQL)
				If Not (Rs.BOF And Rs.EOF) Then
					Newasp.Execute ("UPDATE NC_Favourite SET ProductName='"& Newasp.CheckStr(Rs("TradeName")) &"',UnitPrice="& Rs("NowPrice") &" WHERE userid="& userid &" And shopid="& Rs("shopid"))
				End If
				Set Rs = Nothing
				Response.Redirect("favorite.asp")
			End If
		End Select
		'--统计收藏夹大小
		Set Rs = Newasp.Execute("SELECT COUNT(favid) FROM NC_Favourite WHERE userid="& userid)
		favcount = CLng(Rs(0))
		'以下判断为自动删除多出来的商品
		If favcount > maxfavsize And maxfavsize <> 0 Then
			i = favcount - maxfavsize
			SQL = "SELECT TOP "& i &" favid FROM NC_Favourite WHERE userid="& userid &" ORDER BY favid DESC"
			Set Rs=Newasp.Execute(SQL)
			While Not Rs.EOF
				Newasp.Execute("DELETE FROM NC_Favourite WHERE favid="& rs(0))
				Rs.movenext
			Wend
			smsCount = Maxsms
		End if
		Rs.Close:Set Rs = Nothing
		
		Newasp.LoadTemplates ChannelID, 6, skinid
		
		maxperpage = CInt(Newasp.HtmlSetting(20))	'--每页数
		CurrentPage = Newasp.ChkNumeric(Request("page"))
		If CurrentPage = 0 Then CurrentPage = 1
			
		HtmlContent = Newasp.HtmlContent
		HtmlContent = Replace(HtmlContent, "{$ChannelRootDir}", ChannelRootDir)
		HtmlContent = Replace(HtmlContent, "{$InstallDir}", strInstallDir)
		HtmlContent = Replace(HtmlContent, "{$ChannelID}", ChannelID)
		HtmlContent = Replace(HtmlContent, "{$ModuleName}", Newasp.ModuleName)
		HtmlContent = Replace(HtmlContent, "{$ShopIndex}", strIndexName)
		HtmlContent = Replace(HtmlContent, "{$PageTitle}", "收藏夹")
		
		If FoundErr = False Then
			strContent = Newasp.HtmlSetting(17)
			Set Rs = CreateObject("ADODB.Recordset")
			SQL = "SELECT " & strTopNum & " favid,userid,shopid,ProductName,UnitPrice,addTime FROM [NC_Favourite] WHERE userid="& userid &" ORDER BY favid DESC"
			Rs.Open SQL, Conn, 1, 1
			If Rs.BOF And Rs.EOF Then
				strContent = strContent & Newasp.HtmlSetting(22)
			Else
				Rs.PageSize = maxperpage
				Rs.AbsolutePage = CurrentPage
				page_count = 0
				totalrec = Rs.recordcount
				j = (CurrentPage - 1) * maxperpage + 1
				Do While Not Rs.EOF And (Not page_count = Rs.PageSize)
					If (page_count Mod 2) = 0 Then
						StyleList = 1
					Else
						StyleList = 2
					End If
					strContent = strContent & Newasp.HtmlSetting(18)
					strContent = Replace(strContent, "{$FavoriteID}", Rs("favid"))
					strContent = Replace(strContent, "{$ProductID}", Rs("shopid"))
					strContent = Replace(strContent, "{$TradeName}", Rs("ProductName"))
					strContent = Replace(strContent, "{$FavouriteID}", Rs("favid"))
					strContent = Replace(strContent, "{$UnitPrice}", FormatNumber(Rs("UnitPrice"),2,-1))
					strContent = Replace(strContent, "{$AddTime}", Rs("addTime"))
					strContent = Replace(strContent, "{$StyleList}", StyleList)
					strContent = Replace(strContent, "{$Ordered}", j)
					Rs.movenext
					page_count = page_count + 1
					j = j + 1
					If page_count >= maxperpage Then Exit Do
				Loop
			End if
			Rs.Close:Set Rs = Nothing
			'--分页计算
			If totalrec Mod maxperpage = 0 Then
				Pcount =  totalrec \ maxperpage
			Else
				Pcount =  totalrec \ maxperpage + 1
			End If
			If page_count = 0 Then CurrentPage = 0
			'--显示分类代码
			strPagination = Newasp.HtmlSetting(21)
			strPagination = ShowPaginate(strPagination,CurrentPage,Pcount,totalrec,maxperpage)
			'--分页代码结束
			strContent = strContent & Newasp.HtmlSetting(19)
			strContent = Replace(strContent, "{$Pagination}", strPagination)
		Else
			strContent = Newasp.HtmlSetting(14)
			strContent = Replace(strContent, "{$ErrorMsg}", ErrorMsg)
			strContent = Replace(strContent, "{$DateTime}", Now())
			
		End If
		strContent = Replace(strContent, "{$MaxFavourite}", maxfavsize)
		strContent = Replace(strContent, "{$FavoriteHint}", FavoriteHint)
		HtmlContent = Replace(HtmlContent, "{$PublicContent}", strContent)
		ReplaceString
		Response.Write HtmlContent
	End Sub
	'=================================================
	'过程名:AddFavorite
	'作  用:添加收藏夹
	'=================================================
	Private Sub AddFavorite()
		Dim ValueFavourite,strProductID
		Dim favcount,shopid,userid
		
		userid = Clng(Newasp.memberid)
		shopid = Newasp.ChkNumeric(Request("shopid"))
		
		If shopid = 0 Then
			strProductID = Newasp.CheckRequest(Request.Cookies("ProductIDList")("ProductID"),0)
			If Len(strProductID) = 0 Then Exit Sub 

			SQL = "SELECT shopid,TradeName,NowPrice FROM [NC_ShopList] WHERE ChannelID=" & ChannelID & " And isAccept > 0 And shopid in (" & strProductID & ")"
			Set Rs = Newasp.Execute(SQL)
			If Not (Rs.BOF And Rs.EOF) Then
				Do While Not Rs.EOF
					favcount = Newasp.Execute("SELECT COUNT(favid) FROM NC_Favourite WHERE userid="& userid &" And shopid=" & Rs("shopid"))(0)
					If CLng(favcount) = 0 Then
						ValueFavourite = "" & userid & "," & Rs("shopid") & ",'" & Newasp.CheckStr(Rs("TradeName")) & "'," & Rs("NowPrice") & "," & NowString & ""
						SQL = "INSERT INTO NC_Favourite (userid,shopid,ProductName,UnitPrice,addTime) values ("& ValueFavourite &")"
						Newasp.Execute(SQL)
					End if
					Rs.movenext
				Loop
			End if
			Rs.Close:Set Rs = Nothing
		Else
			If shopid = 0 Then Exit Sub
			SQL = "SELECT shopid,TradeName,NowPrice FROM [NC_ShopList] WHERE ChannelID=" & ChannelID & " And isAccept > 0 And shopid=" & shopid
			Set Rs = Newasp.Execute(SQL)
			If Not (Rs.BOF And Rs.EOF) Then
					
				favcount = Newasp.Execute("SELECT COUNT(favid) FROM NC_Favourite WHERE userid="& userid &" And shopid=" & Rs("shopid"))(0)
				If CLng(favcount) = 0 Then
					ValueFavourite = "" & userid & "," & Rs("shopid") & ",'" & Newasp.CheckStr(Rs("TradeName")) & "'," & Rs("NowPrice") & "," & NowString & ""
					SQL = "INSERT INTO NC_Favourite (userid,shopid,ProductName,UnitPrice,addTime) values ("& ValueFavourite &")"
					Newasp.Execute(SQL)
				End if
			End if
			Rs.Close:Set Rs = Nothing
		End If
	End Sub
	'///---商城收藏夹过程结束
	'-------------------------------------------------
	'///---订单查询过程开始
	'=

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -