www.gusucode.com > 全球营销软件站整站源码4月最新数据 4.0源码程序 > 801wyxqf\ask\usertopic.asp

    <!--#include file="conn.asp"-->
<!--#include file="inc/const.asp"-->
<%
Dim HtmlContent,XMLDom,FoundSQL
Dim AskedPageList,strLink,topicmode,PostsMode,AnswerMode,NowUserID,NowUserName,HeadTitle
Dim maxperpage,CurrentPage,Pcount,totalrec,totalnumber
maxperpage = Newasp.ChkNumeric(NewAsp.Posts_Setting(30))
If maxperpage = 0 Then maxperpage = 20
CurrentPage = NewAsp.ChkNumeric(Request("page"))
If CurrentPage = 0 Then CurrentPage = 1
topicmode = NewAsp.ChkNumeric(Request("topicmode"))
PostsMode = NewAsp.ChkNumeric(Request("PostsMode"))
AnswerMode = NewAsp.ChkNumeric(Request("AnswerMode"))
NowUserID = NewAsp.ChkNumeric(Request("userid"))

NowUserInfo()

Select Case topicmode
	Case 1
		HeadTitle = "回答记录"
		FoundSQL = " WHERE userid="&NowUserID&" And topicmode=1 And LockTopic=0 "
	Case 2
		HeadTitle = "投票记录"
		FoundSQL = " WHERE userid="&NowUserID&" And topicmode=2 And LockTopic=0 "
	Case 3
		HeadTitle = "分享记录"
		FoundSQL = " WHERE userid="&NowUserID&" And topicmode=3 And LockTopic=0 "
	Case Else
		HeadTitle = "提问记录"
		FoundSQL = " WHERE userid="&NowUserID&" And topicmode<>3 And LockTopic=0 "
End Select
HtmlContent = NewAsp.LoadTemplate("usertopic")

HtmlContent = Replace(HtmlContent, "{$HeadTitle}", NowUserName &"的"& HeadTitle)
LoadTopiclist()
Response.Write NewAsp.ArchiveHtml(HtmlContent)
NewAsp.CloseConn()

Sub NowUserInfo()
	Dim SQL,Rs,Userslist
	Dim Node
	Set XMLDom = NewAsp.CreateXMLDoc("msxml2.FreeThreadedDOMDocument"& MsxmlVersion)
	XMLDom.appendChild(XMLDom.createElement("xml"))
	SQL="SELECT userid,Username,Nickname,Password,UserClass,Useremail,Usersex,Photo,Homepage,Points,Experience,Asktotal,Askoverdue,Answertotal FROM NC_Ask_Users WHERE userid="&NowUserID&" And Userlock=0"
	Set Rs = NewAsp.Execute(SQL)
	Set Userslist=NewAsp.RecordsetToxml(rs,"row","nowuser")
	Rs.Close : Set Rs=Nothing
	SQL=Empty
	If Not Userslist Is Nothing Then
		For Each Node in Userslist.documentElement.SelectNodes("row")
			NowUserID = CLng(Node.selectSingleNode("@userid").text)
			NowUserName = NewAsp.Checkstr(Node.selectSingleNode("@username").text)
		Next
		XMLDom.documentElement.appendChild(Userslist.documentElement)
	End If
	Set Userslist=Nothing
End Sub

Sub LoadTopiclist()
	Dim SQL,Rs,topidlist,Node
	'Set XMLDom = NewAsp.CreateXMLDoc("msxml2.FreeThreadedDOMDocument"& MsxmlVersion)
	'XMLDom.appendChild(XMLDom.createElement("xml"))
	XMLDom.documentElement.setAttribute "action",0
	XMLDom.documentElement.setAttribute "nowuserid",NowUserID
	XMLDom.documentElement.setAttribute "nowusername",NowUserName
	XMLDom.documentElement.setAttribute "topicmode",topicmode
	XMLDom.documentElement.setAttribute "postsmode",PostsMode
	XMLDom.documentElement.setAttribute "answermode",AnswerMode
	XMLDom.documentElement.setAttribute "headtitle",HeadTitle
	If topicmode=1 Then
		totalnumber = NewAsp.Execute("SELECT COUNT(*) FROM NC_Ask_Answer WHERE userid="&NowUserID&" And AnswerMode<2")(0)
		totalrec = totalnumber
	Else
		totalnumber = NewAsp.Execute("SELECT COUNT(*) FROM NC_Ask_Topic "& FoundSQL)(0)
		totalrec = totalnumber
	End If
	Pcount = CLng(totalrec / maxperpage)  '得到总页数
	If Pcount < totalrec / maxperpage Then Pcount = Pcount + 1
	If Pcount < 1 Then Pcount = 1
	If CurrentPage < 1 Then CurrentPage = 1
	If CurrentPage > Pcount Then CurrentPage = Pcount
	
	XMLDom.documentElement.setAttribute "pagesize",maxperpage
	XMLDom.documentElement.setAttribute "page",CurrentPage
	XMLDom.documentElement.setAttribute "totalnumber",totalnumber
	XMLDom.documentElement.setAttribute "totalrec",totalrec
	XMLDom.documentElement.setAttribute "pagecount",Pcount
	If Not IsObject(Conn) Then ConnectionDatabase
	Set Rs = NewAsp.CreateAXObject("ADODB.Recordset")
	If topicmode=1 Then
		SQL="SELECT AnswerID,classid,TopicID,classname,userid,UserName,PostUserID,PostUsername,title,AnswerTime as DateAndTime,PostTable,AnswerNum,AnswerMode,TopicMode FROM NC_Ask_Answer WHERE userid="&NowUserID&" And AnswerMode<2 ORDER BY AnswerTime DESC"
	Else
		SQL="SELECT TopicID,classid,userid,classname,title,PostUsername,Expired,Closed,PostTable,DateAndTime,LastPostTime,LockTopic,Reward,Hits,PostNum,CommentNum,TopicMode,Highlight,Broadcast,Anonymous,IsTop FROM NC_Ask_Topic "&FoundSQL&" ORDER BY LastPostTime DESC"
	End If
	Rs.Open SQL,Conn,1,1
	If Not (Rs.BOF And Rs.EOF) Then
		If CurrentPage >1 Then
			Rs.Move (CurrentPage-1) * maxperpage
		End If
	End If
	If Not Rs.EOF Then
		SQL=Rs.GetRows(maxperpage)
		Set topidlist=NewAsp.ArrayToxml(SQL,Rs,"row","topic")
	Else
		Set topidlist=Nothing
	End If
	Set Rs=Nothing
	SQL=Empty
	If Not topidlist Is Nothing Then 
		For Each Node in topidlist.documentElement.SelectNodes("row")
			Node.selectSingleNode("@title").text=NewAsp.Checkstr(Node.selectSingleNode("@title").text)
			Node.selectSingleNode("@dateandtime").text=NewAsp.FormatDate(Node.selectSingleNode("@dateandtime").text,5)
			If topicmode=0 Then
				If CLng(Node.selectSingleNode("@closed").text) = 1 Then
					Node.selectSingleNode("@topicmode").text=5
				End If
			End If
		Next
		XMLDom.documentElement.appendChild(topidlist.documentElement)
		Set topidlist=Nothing
	End If
	strLink = NewAsp.InstallDir & "usertopic.asp?userid=" & NowUserID & "&topicmode=" & topicmode & "&"
	AskedPageList = showlistpage(CurrentPage,Pcount,strLink)
	transform_topicList()
	HtmlContent = Replace(HtmlContent, "{$AskedPageList}", AskedPageList)
End Sub
Sub transform_topicList()
	Dim proc,XMLStyle,node,cnode,XSLTemplate
	Set XSLTemplate=NewAsp.CreateAXObject("Msxml2.XSLTemplate" & MsxmlVersion )
	Set XMLStyle=NewAsp.CreateXmlDoc("msxml2.FreeThreadedDOMDocument"& MsxmlVersion )
	XMLStyle.load Server.MapPath(NewAsp.TemplatePath & "xslt/usertopic.xslt")
	Set Node=XMLStyle.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
	Set CNode=XMLStyle.createNode(2,"name","")
	CNode.text="installdir"
	Node.attributes.setNamedItem(CNode)
	Node.text=NewAsp.InstallDir
	XMLStyle.documentElement.appendChild(node)
	Set Node=XMLStyle.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
	Set CNode=XMLStyle.createNode(2,"name","")
	CNode.text="AskedPageList"
	Node.attributes.setNamedItem(CNode)
	Node.text=AskedPageList
	XMLStyle.documentElement.appendChild(node)
	Set Node=XMLStyle.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
	Set CNode=XMLStyle.createNode(2,"name","")
	CNode.text="skinurl"
	Node.attributes.setNamedItem(CNode)
	node.text=NewAsp.AskedSkinUrl
	XMLStyle.documentElement.appendChild(node)

	Set Node=XMLStyle.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
	Set CNode=XMLStyle.createNode(2,"name","")
	CNode.text="topic_mode"
	Node.attributes.setNamedItem(CNode)
	node.text=topicmode
	XMLStyle.documentElement.appendChild(node)
	XSLTemplate.stylesheet=XMLStyle
	Set proc = XSLTemplate.createProcessor()
	proc.input = XMLDom
	proc.transform()
	Dim procstr
	procstr = proc.output
	'Response.Write  procstr
	HtmlContent = Replace(HtmlContent, "{$Topiclist}", procstr)
	'Response.Write XMLDom.xml
	Set XMLDom=Nothing 
	Set proc=Nothing
	Set XMLStyle=Nothing
	Set XSLTemplate=Nothing
End Sub
%>