03. november 2002 - 20:22Der er
15 kommentarer og 1 løsning
Udtræk fra db
Kan jeg opdele mit udtræk fra min db hvis den er for lang?? Jeg har et nyheds udtræk der sprænger min tabel, kan jeg bestemme at hvis det f.eks. er længere end 400 karakterer skal resten ligge på en anden side el. tredje side hvis det er tilfældet? Og hvordan??? ;o)
Jeg har ikke lige testet den men den skulle gerne virke som den står nu...:
intSplit = 200 strText = "Jeg har brug for noget hjælp. Jeg har tyvstjålet Dennis' gæstebog og fuldstændigt revet den fra hinanden og opbygget en link-uploader på min hjemmeside, hvor brugere kan uploade deres egne links til deres hjemmesider. Noget der sparer masser af tid (for mig).. Den virker over utrolig godt. FOR godt, faktisk. Nu er der nemlig så mange der har skrevet, at det ville være KANONT at få dem opdelt i sider. Jeg har derfor kigget lidt på Dennis' paging.asp, men jeg kan ikke få den til at virke. Er der nogle der kan give mig en hjælpende hånd?. Jeg tror efterhånden at jeg har fået samtlige ODBC-fejl der eksisterer."
arrTexts = Array(Left(strText,intSplit),Mid(strText,intSplit,intSplit+intSplit),Right(strText,intSplit)) For i = 0 To Round(Len(strText)/intSplit) If i = 1 Then strCreateArray = Left(strText,intSplit) & "," End If
If Not i = 1 And Not i = Round(Len(strText)/intSplit) Then strCreateArray = strCreateArray & Mid(strText,intSplit,intSplit+intSplit) & "," intSplit = intSplit + intSplit End If
If i = Round(Len(strText)/intSplit) Then strCreateArray = strCreateArray & Right(strText,intSplit) End If Next
arrTexts = Split(strCreateArray,",") For i = 0 To UBound(arrTexts) document.write(arrTexts(i) & "<p>") Next
Her er et eks som laver "paging" af en nyhed hvis der er mere en 400 karakter. Du skal lige få rettet database navnet + tabel og kolonne nanvet skal tilpasses din database:
<TABLE BORDER="0" WIDTH="100%"> <TR> <TD> <% Set Conn = Server.CreateObject("ADODB.Connection") Set rs = Server.CreateObject("ADODB.RecordSet") Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("db5.mdb")
id = Request("id") subpage = Int(Request("subpage")) if subpage = "" then subpage = 0 maxCharPrSide = 400
SQL = "SELECT * FROM nyhederTB WHERE ID = " & id Set rs = Conn.Execute(SQL)
totalChar = len(rs("nyhedsTekst")) if totalChar > maxCharPrSide then showFromChar = subpage * maxCharPrSide + 1 Response.Write Mid(rs("nyhedsTekst"),showFromChar,maxCharPrSide) 'Laver Forrige og Næste links Response.Write "<br><br>" if subpage > 0 then Response.Write "<a href=""?subpage=" & subpage-1&"&id="&id&""">Forrige side</a>" else Response.Write "Forrige side" end if Response.Write " | " if subpage < Int(totalChar/maxCharPrSide) then Response.Write "<a href=""?subpage=" & subpage+1&"&id="&id&""">Næste side</a>" else Response.Write "Næste side" end if
else Response.Write rs("nyhedsTekst") end if %> </TD> </TR> </TABLE>
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.