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 %>