webForumDet fria alternativet

Visa nyheter problem

1 svar · 143 visningar · startad av eko

ekoMedlem sedan juni 2002198 inlägg
#1

Hej

Jag har stora problem med att visa mina nyheter på det sätt jag vill.
Titta på denna bild så förstår ni hur jag vill att dom ska visas!
http://www.jettrocker.com/news.gif

<%
db1 = Server.MapPath("data/nyheter.mdb")  
db = Server.MapPath("data/nyheter.mdb") 
Const perSida = 5                               
%>
<%If Request.QueryString("do") = "" Then%>
  
<table width="600" align="center" cellpadding="3" cellspacing="0">
  <%Set Conn = Server.CreateObject("ADODB.Connection") 
          Set RecSet = Server.CreateObject("ADODB.Recordset")
          Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db1

          Sidan = Request.QueryString("sida")
          If Sidan = "" then 
              sida = 1 
          Else 
              sida = Sidan 
          End If 

          With RecSet
              .CursorLocation = 3
              .CacheSize = perSida 
          End With

          If CStr(Request.QueryString("id")) <> "" Then
             SQL = "SELECT * FROM nyheter Where id=" & Request.QueryString("id")
          Else
             SQL = "SELECT * FROM nyheter ORDER BY DATUM DESC"
          End If
          RecSet.Open SQL, Conn%>
  <tr> 
    <td colspan="2"><a href="admin.asp?do=login">admin</a> | <a href="index.asp">start</a></td>
  </tr>
  <tr> 
    <td colspan="2"><img src="pix.gif" width="600" height="10" border="0"></td>
  </tr>
  <tr> 
    <td height="14" valign="top"><b><font size="3"><%=RecSet("rubrik")%> </font></b></td>
    <td valign="top"> 
      <div align="right"> 
        <%
Session.LCID = 1033
Response.Write FormatDateTime(RecSet("datum"),1)
%>
</td>
  </tr>
  <tr> 
    <td colspan="2" class="normal"><%=Replace(RecSet("nyhet"),vbCrLf,"<br>")%></td>
  </tr>
  <tr> 
    <td colspan="2" class="normal"><br>
      Posted by <%=RecSet("skribent")%> on 
      <%
Session.LCID = 1033
Response.Write FormatDateTime(RecSet("datum"),1)
%>
      at <%=FormatDateTime(RecSet("datum"),3)%></td>
  </tr>
  <%If RecSet.EOF Then%>
  <tr> 
    <td colspan="2">No Data!</td>
  </tr>
  <tr> 
    <td colspan="2">&nbsp;</td>
  </tr>
  <%Else
          RecSet.Close

          SQL = "SELECT * FROM nyheter ORDER BY DATUM DESC"
          RecSet.Open SQL, Conn

          With RecSet
               .MoveFirst 
               .PageSize = perSida 
               .AbsolutePage = sida
          End With

          Sidor =  RecSet.PageCount%>
  <tr> 
    <td colspan="2">&nbsp;</td>
  </tr>
  <%Count = 0 
          Do While Not RecSet.EOF And Count < RecSet.PageSize

          X = X + 1 
          If X Mod 2 = 0 then 
             color = "" 
          Else 
             color = "#33CCFF" 
          End If %>
  <tr> 
    <%If Request.QueryString("sida") = "" Then%>
    <td bgcolor="<%=Color%>"><a href="index.asp?id=<%=RecSet("id")%>"><%=RecSet("rubrik")%></a> </td>
    <td bgcolor="<%=Color%>"> 
      <div align="right"><%=FormatDateTime(RecSet("datum"),1)%></div></td>
    <%Else%>
    <td bgcolor="<%=Color%>"><b> 
      <a href="index.asp?sida=<%=Request.QueryString("sida")%>&id=<%=RecSet("id")%>"><%=RecSet("rubrik")%></a></b></td>
    <td bgcolor="<%=Color%>"><div align="right"><b><%=FormatDateTime(RecSet("datum"),1)%></b></div></td>
    <%End If%>
  </tr>
  <%Count = Count + 1
         RecSet.MoveNext
         Loop

         RecSet.Close
	 Set RecSet = nothing
         End If%>
  <%If Sidor > 1 Then%>
  <tr> 
    <td colspan="2"><%If Sidor > 1 Then%>
      Page 
      <%Else%> <%End If%> <%If Sidor <> 1 Then
           For Sid = 1 To Sidor
           If (Int(Sid)) = (Int(sida)) Then%> 
      <font color="#FF0000"><%=Sid%></font> <%Else%> <a href="index.asp?sida=<%=Sid%>"><%=Sid%></a> <%End If
           Next 
           End If%> </td>
  </tr>
  <tr> 
    <td colspan="2">
      <%End If%>
      <%End If%>
    </td>
  </tr>
</table>

Jag har använt denna kod en gång i en gästbok för att visa 10 inlägg i taget så den kanske kan vara till någon hjälp:

<%
If sida > 1 Then
  Response.Write("<a href=""?NODE=7&page=" & sida - 1 & """>Previous 10 Entries</a> |")
Else
  Response.Write("Previous 10 Entries |")
End If

If sida < sidor Then
  Response.Write("<a href=""?NODE=7&page=" & sida + 1 & """> Next 10 Entries</a>")
Else
  Response.Write(" Next 10 Entries")
End If
%>

Finns det någon snäll människa som kan hjälpa till? :q

Engine^Medlem sedan dec. 20003 887 inlägg
#2

Du behöver en räknare i loopen som skriver ut nyheter. Om räknaren är mindre än x så skriver du ut hela nyheten annars bara rubriken.

121 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
118 ms — hämta tråd, inlägg och bilagor (db)