För att ta fram de tre senaste nyheterna gör du på följande vis:
SELECT TOP 3 * FROM news ORDER BY id DESC
------------------
Peter D
1 svar · 104 visningar · startad av Korak
Jag har ett nyhetsscript i asp och skulle på min startsida vilja visa de 3 senaste inläggen från det scriptet.
Skulle vilja att inläggen visas med datum och rubrik, där rubriken är länk till hela inlägget.
Någon som kan hjälpa mig med hur jag ska göra detta på smartaste sätt?
Såhär ser scriptet ut:
<!-- #include file="data.asp" -->
<%
dim data, strDB, page, display, include_page, num_items, multi, intCount, show_email, linked_page
if request.querystring("page") = "" then
page = 1
else
page = request.querystring("page")
end if
set data = server.createobject("ADODB.Recordset")
data.activeconnection = strDB
data.source = "SELECT * FROM admin WHERE id = 1"
data.open
num_items = data("items_per")
display = data("display")
include_page = data("included_page")
multi = data("multi")
show_email = data("show_email")
if data("linked_page") = "none" then
linked_page = include_page
else
linked_page = data("linked_page")
end if
data.close
if request.querystring("id") <> "" then
set data = server.createobject("ADODB.Recordset")
data.activeconnection = strDB
data.source = "SELECT * FROM news WHERE id = " & request.querystring("id")
data.cursortype = 2
data.cursorlocation = 3
data.locktype = 3
data.open
if show_email = "yes" then
show_email = "</b> <a href=""mailto:" & data("author_email") &""">" & data("author_email") & "</a></p>"
else
show_email = ""
end if
response.write data("news_date") & "<br>"
response.write "<b>" & data("news_title") & "</b><p>"
response.write data("news_text") & "</p><p>"
response.write "<b>" & data("news_author") & "</b><br>"
response.write show_email
response.write "<a href=""javascript:history.back()""><< Tillbaka </a>"
show = "no"
end if
if show = "" then
set data = server.createobject("ADODB.RecordSet")
data.activeconnection = strDB
data.source = "SELECT * FROM news ORDER BY id DESC"
data.cursortype = 3
data.cursorlocation = 3
data.locktype = 3
data.pagesize = num_items
data.open
data.absolutepage = page
intCount = 0
while not data.eof and intCount < data.pagesize
intCount = intCount + 1
if display = "A" then
if show_email = "yes" then
show_email = "</b> <a href=""mailto:" & data("author_email") &""">" & data("author_email") & "</a></p>"
else
show_email = ""
end if
response.write "<font size=""4""><b>" & data("news_title") & "</font></b> " & data("news_date") & "<br>"
response.write "<font size=""2"">" & data("news_text") & "</font><br><br>"
response.write "Skrivet av: <b>" & data("news_author") & show_email
response.write "<hr>"
end if
if display = "B" then
response.write data("news_date") & "<br>"
response.write "<a href=""" & linked_page & "?id=" & data("id") & """>" & data("news_title") & "</a><br><br>"
end if
if display = "C" then
response.write "<br><a href=""" & linked_page & "?id=" & data("id") & """>" & data("news_title") & "</a><br>"
response.write "<font size=""2"">" & left(data("news_text"), 40) & "...</font><br>"
end if
data.movenext
wend
response.write "<br><br>"
if multi = "yes" then
if page > 1 then
response.write " <a href=""" & include_page & "?page="& page - 1 & """><< Tillbaka </a>| "
end if
end if
set data = server.createobject("ADODB.Recordset")
data.activeconnection = strDB
SQL = "SELECT COUNT (id) AS antalPoster FROM news"
data.open SQL
posts = data("antalPoster")
totalPages = int((posts-1)/num_items + 1)
response.write "Sid <b>"& page &"</b> av <b>"& totalPages &"</b> | "
if multi = "yes" then
if not data.eof then
response.write "<a href=""" & include_page & "?page="& page + 1 & """>Nästa >></a>" & " Det finns <b>" & posts & "</b>" & " Nyheter totalt."
end if
end if
data.close
end if
%>
Tack på förhand!
//Korak
För att ta fram de tre senaste nyheterna gör du på följande vis:
SELECT TOP 3 * FROM news ORDER BY id DESC
------------------
Peter D