Avatar billede wareagle Nybegynder
26. september 2002 - 14:45 Der er 16 kommentarer og
3 løsninger

Problem med kode

Hej jeg skal ha denne kode lavet om til 2 koder

1. en der kun vise en post (sidste nye post i databasen)

2. en der vise alle poster på samme måde

Koden:

<%
Set MinCon = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
MinCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("db/news.mdb")

SQL = "SELECT TOP 16 * From news Order By Id Desc"
Set rs = MinCon.Execute(SQL)

firstPost = true
do while not rs.EOF
  if firstPost = true then
    firstPost = false
%> <font color="" size="2"><b><%=rs("title")%></b></font><br>
Skrivet av: <b><a href="mailto:<%=rs("email")%>"><%=rs("author")%></a></b> | <b><%=rs("date")%><br></b>
<%=left(rs("news"),180)%>..<br>
<b><a href="news.asp?ID=<%=rs("id")%>">Läs hela</a></b><br><br>
<% else %>
<font color="" size="2"><b><%=rs("title")%></b></font><br>| <b><%=rs("date")%><br></b>
<%=left(rs("news"),180)%>..<br>
<b><a href="news.asp?ID=<%=rs("id")%>">Läs hela</a></b><br><br>
<% end if
  rs.MoveNext
loop
%>
Avatar billede exp-ralle Nybegynder
26. september 2002 - 14:50 #1
Følger lige med
Avatar billede kovalt Nybegynder
26. september 2002 - 14:54 #2
Det er bare SQL-sætninger du spørger til? resten kan vel gå igen begge gange
Avatar billede kovalt Nybegynder
26. september 2002 - 14:57 #3
Hvis du bruger autonummerering på dit ID-felt får du det nyester indlæg sådan:
SQL = "SELECT MAX(id) FROM tabelnavn"
Avatar billede wareagle Nybegynder
26. september 2002 - 14:59 #4
ok men jeg er bare ikke så skærk i asp så hvis i ville prøve at lave koden for mig?
Avatar billede kovalt Nybegynder
26. september 2002 - 15:00 #5
TOP 16 laves ved at SELEVT * FROM tabelnavn ORDER BY id

Derefter skal du stille dig i slutningen af rs og gå 16 steps tilbage og så udskrive derfra
Avatar billede wareagle Nybegynder
26. september 2002 - 15:02 #6
hva ??
Avatar billede kovalt Nybegynder
26. september 2002 - 15:05 #7
<%
Set MinCon = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
MinCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("db/news.mdb")

strSQL = "news, title, author, email, date FROM news WHERE id = MAX(id)"
Set rs = MinCon.Execute(strSQL) %>

<font color="" size="2">
<b><%=rs("title")%></b></font>
<br>
Skrivet av: <b><a href="mailto:<%=rs("email")%>"><%=rs("author")%></a></b> | <b><%=rs("date")%><br></b>
<%=left(rs("news"),180)%>..<br>
<b><a href="news.asp?ID=<%=rs("id")%>">Läs hela</a></b>
%>
Avatar billede medions Nybegynder
26. september 2002 - 15:06 #8
SQL = "SELECT TOP 1 * From news Order By Id Desc"
Set Top1Rs = MinCon.Execute(SQL)

SQL = "SELECT * From news Order By Id Desc"
Set AllRs = MinCon.Execute(SQL)

Respons.Write(Top1Rs(0))
Respons.Write("<br>")
Response.Write(AllRs(0))

//>Rune
Avatar billede kovalt Nybegynder
26. september 2002 - 15:06 #9
Det ovenover udskriver de først 180 karakterer af det nyeste indlæg......
Avatar billede wareagle Nybegynder
26. september 2002 - 15:06 #10
ok
Avatar billede kovalt Nybegynder
26. september 2002 - 15:06 #11
:-)
Avatar billede kovalt Nybegynder
26. september 2002 - 15:07 #12
MEDIONS: Det du har lavet udskriver det alle posterne i det givne rs
Avatar billede wareagle Nybegynder
26. september 2002 - 15:23 #13
kan koden der viser nyeste post ikke også se sådan ud?

<%
Set MinCon = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
MinCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("db/news.mdb")

SQL = "SELECT TOP 3 * From news Order By Id Desc"
Set rs = MinCon.Execute(SQL)%>

<font color="" size="2"><b><%=rs("title")%></b></font><br>
Skrivet av: <b><a href="mailto:<%=rs("email")%>"><%=rs("author")%></a></b> | <b><%=rs("date")%><br></b>
<%=left(rs("news"),180)%>..<br>
<b><a href="news.asp?ID=<%=rs("id")%>">Läs hela</a></b><br><br>

<%
rs.Close
MinCon.Close
Set rs = Nothing
Set MinCon = Nothing
%>
Avatar billede wareagle Nybegynder
26. september 2002 - 15:24 #14
og i så fald hvordan for jeg det tik eks at vise 5 poster
Avatar billede wareagle Nybegynder
26. september 2002 - 15:24 #15
tik = til
Avatar billede wareagle Nybegynder
26. september 2002 - 15:25 #16
hov!!! SQL = "SELECT TOP 3 * From news Order By Id Desc"  = SQL = "SELECT TOP 1 * From news Order By Id Desc"
Avatar billede mccannon Nybegynder
26. september 2002 - 17:29 #17
en simpel måde at gøre det på .:

SQL = "SELECT * From news Order By Id Desc"
If not rs.eof then
for i = 1 to 1
response.write RS(felt")
next
end if
Avatar billede mccannon Nybegynder
26. september 2002 - 17:30 #18
hov glemte et "
SQL = "SELECT * From news Order By Id Desc"
If not rs.eof then
for i = 1 to 1
response.write RS("felt")
next
end if
Avatar billede medions Nybegynder
04. oktober 2002 - 13:42 #19
Thx 4 Poinz

//>Rune
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester