% timeit = timer() lngID = CInt(Request.Querystring("id")) Dim strFran, intFranid, strDatum, id, intPrivat, strInlagg, intSvarid, fBild, fSenaste, fFotoStatus, fStrNick, kon, alder, Connect, intUserID Set Connect = Server.CreateObject("Adodb.Connection") Connect.Open strCon ' -- // Hämtar inläggen och användaruppgifter från databasen och lägger in i en array strSql = "SELECT g.strFran, g.intFranid, g.strDatum, g.id, g.intPrivat, g.strInlagg, g.intSvarid, a.bild, a.user, " _ & "f.bild, f.senaste, f.intFotoStatus, f.strNick, f.kon, f.alder, g.intUserid " _ & "FROM gb g join anv a on a.id = g.intUserid join anv f on f.id = g.intFranid " _ & "WHERE intUserid=" & lngID & " Order by g.strDatum DESC LIMIT 500" Set objRs = Connect.Execute(strSql) If Not objRs.EOF Then arrGB = objRs.GetRows() objRs.Close : Set objRs = Nothing ' -- // Inläggen hämtade och ligger nu i arrGB ' -- // Kollar så att det finns några inlägg, annars får vi hämta användaruppgifterna på annat sätt If IsArray(arrGB) Then strUser = arrGB(8,0) strUserBild = arrGB(7,0) Else strSql = "SELECT bild, user " _ & "FROM anv " _ & "WHERE id=" & lngID Set objRs = Connect.Execute(strSql) If Not objRs.EOF Then strUser = objRs(1) strUserBild = objRs(0) End If objRs.Close : Set objRs = Nothing End If ' -- // Klart ' -- // Addar i databasen var man befinner sig strSQL = "UPDATE anv SET sida = 'gastbok.asp?id=" & lngID & "', " & _ "sidinfo = 'Läser i " & strUser & "´s gästbok', " & _ "siddatum = '" & Now() & "' " & _ "WHERE id = " & session("id") &"" Connect.Execute(strSQL),,128 ' -- // Slut ' -- // Om det är ens egen GB så sätts inläggen till lästa If lngID = CInt(Session("id")) then SQL = "UPDATE gb Set intLast = 1 " _ & "WHERE intUserid=" & lngID & " AND intLast=0" Connect.Execute SQL,,128 End if 'strUser = CStr(arrGB(8, i)) ' -- // Done =) If Request.QueryString("id") <> "" Then SQL = "SELECT strUser, intUserid, strBlockuser, intBlockid FROM block WHERE intUserid = "& Request.Querystring("id") &" AND intBlockid="& Session("id") &"" Set Block = Connect.Execute(SQL) Else // din querystring är tom End If IF not Block.EOF Then Response.Redirect "blockad.asp" End IF %>
<% ' -- // Kollar så att det finns inlägg If IsArray(arrGB) Then ' -- // Visa antal inlägg per sida intPostsPerPage = 20 ' -- // Navigeringshantering If IsNumeric(Trim(Request.Querystring("pg"))) Then intPage = CInt(Trim(Request.Querystring("pg"))) Else intPage = 1 End If intFirstPost = (intPage - 1) * intPostsPerPage intTotalPosts = UBound(arrGB, 2) intPages = ((intTotalPosts)\intPostsPerPage)+1 If intFirstPost + (intPostsPerPage - 1) >= UBound(arrGB,2) Then intLastPost = UBound(arrGB, 2) Else intLastPost = intFirstPost + (intPostsPerPage - 1) End If ' -- // Klart med det =) ' -- // Skriv ut inläggen på den valda sidan For i = intFirstPost To intLastPost If i Mod 2 = 0 then color = "426278" Else color = "365062" End If ' -- // Hämtar alla värden från arrayn (databasen...) strFran = CStr(arrGB(0, i)) intFranid = CLng(arrGB(1, i)) strDatum = CDate(arrGB(2, i)) id = CLng(arrGB(3, i)) intPrivat = CLng(arrGB(4, i)) strInlagg = CStr(arrGB(5, i)) intSvarid = CLng(arrGB(6, i)) fBild = CStr(arrGB(9, i)) fSenaste = arrGB(10, i) fFotoStatus = CLng(arrGB(11, i)) fStrNick = arrGB(12, i) kon = arrGB(13, i) alder = arrGB(14, i) intUserID = Cint(arrGB(15, i)) %>
<% Next ' -- // Och så var alla inlägg utskrivna ' -- // Det fanns inga inlägg, vi får ställa in lite annat Else intPages = 0 intTotalPosts = -1 End If Response.write " <%=strUser & " har totalt " & intTotalPosts+1 & " antal gästboksinlägg!"%> |
||||||||||||||