mackanz Medlem sedan sep. 2003 443 inlägg Frågan 1 juli 2005 13:11 #1 hur gör man om man skulle vilja skriva ut i en gästbok hur många inlägg det är.
Har en gästbok med en herrans massa inlägg, och skulle vilja ha att det vid inlägget står inlägg
inläggnr: 342 exempelvis?
Det skalö stå vid varje inlägg vilket nummer det är.
Man kan ju inte loopa ut gestbok_id eftersom det ger en fektlig bild eftersom man har fått raderat poster.
Kan någon ge mej ett kodförslag/kodexempel???
Så här kanske...
<%
set rs = connect.execute("Select * from gastboken order by id desc")
set rsCount = connect.execute("Select count(*) as antal from gastboken")
count = rsCount("antal")
Do until rs.eof
count = count - 1
response.write "Inläggnr: " & count
response.write "<br><br>"
response.write rs("INLÄGGET")
rs.movenext
loop
%>
mackanz Medlem sedan sep. 2003 443 inlägg tabellen bytte jag ut mot gast (den heter gast i databasen), men ska jag byta ut antal också eller????
jag fick:
Körningsfel i Microsoft VBScript (0x800A01A8)
Objekt krävs.: ''
@nders Medlem sedan juni 2000 32 967 inlägg Då har du väl skrivit fel objektnamn, men det är ju omöjligt att svara på ordentligt, eftersom du inte visar någon kod.
mackanz Medlem sedan sep. 2003 443 inlägg <td><b><font color="#000000">Inlägg från besökare
<%
set rsCount = DinConn.execute("Select count(*) as antal from gast")
response.write rsCount("antal")
%>
</font></b></td><td align="right"><%
Session.LCID = 1053
Response.write cDate(rsrecset("dat"))
%></td><td width="1"> </td>
<td width="16"><a href="mailto:<%=rsRecset("email")%>">
<img src="../images/gbokiconmail.gif" border="0" alt="<%=rsRecset("email")%>" WIDTH="14" HEIGHT="14"></td>
<td width="16"><a href="<%=rsRecset("www")%>" target="_blank">
<img src="../images/gbokiconwww.gif" border="0" alt="<%=rsRecset("www")%>" WIDTH="14" HEIGHT="14"></td>
</table></td>
</tr>
<tr>
<td class="gbsvar" width="15%">Namn:
<%=rsRecset("name")%> </td>
</tr>
<tr>
<td class="gbsvar" colspan="2">
<%=Replace(Server.HTMLEncode(rsRecset("message")),vbcrlf,"<BR>")%>
</td>
</tr>
@nders Medlem sedan juni 2000 32 967 inlägg Hmm, var skapar du rsRecset någonstans?
Du fick felmeddelande förut för att du hade glömt bytt namn på DinConn. Där ska namnet på din connection stå.
Följ detta kod exempel så fungerar det fint. Du får ändra databasnamnet och tabellnamnet till
det du har annars blir det felmeddelanden :)
<%
set connect = server.createobject("adodb.connection")
connect.open "Driver={Microsoft Access driver (*.mdb)};dbq=" & Server.MapPath("DATABASEN.mdb")
set rs = connect.execute("Select * from TABELLEN order by id desc")
set rsCount = connect.execute("Select count(*) as antal from TABELLEN")
count = rsCount("antal")
do until rs.eof
response.write "InläggNr: " & count & "<br><br>"
response.write "Inlägg: " & rs("INLÄGG") & "<br><br>"
count = count - 1
rs.movenext
loop
%>
mackanz Medlem sedan sep. 2003 443 inlägg jag har ju en include fil där jag har sjäölva kopplingen/anropningen.
Bufogar hela koden
<!-- #include file="..\inc\gbqpb.asp" -->
</head>
<body>
<br><br>
<table align="center"><tr><td>
<a href="gast.asp">Skriv ett nytt inlägg här</a></b><br><br>
</td></tr></table>
<%'-*Start kommentar*-Här skapar jag en sträng som lägger till data i databasen-*Avslutande kommentar*-%>
<%'-*Fortsätter kommentar*-som ska sparas i kontakt posten i databasen-*Avslutande kommentar*-%>
<%strShow = "SELECT * FROM gast ORDER BY dat desc"%>
<%rsRecset.Open strShow, cnConn, 3, 3%>
<%
intsida=trim(Request.QueryString("sida"))
if intsida = "" then
intsida = 1
else
intsida = cint(intsida)
end if
%>
<%'-*Startar kommentar*-Här skapar jag verksamhetslogik för-*Avslutar kommentar*-%>
<%'-*Fortsätter kommentar*-att kommunicera med datasen via Recordeset-*Avslutande kommentar*-%>
<%'<table border="0" width="70%" height="40%" align="center" cellspacing="0" cellpadding="0">%>
<table border="0" width="600" align="center" cellspacing="0" cellpadding="2" bordercolor="#eaf1fe">
<%
if rsRecset.EOF=true then
Response.Write("Det finns inga inlägg i gästboken")
else
rsRecset.PageSize = 8
rsRecset.AbsolutePage = intsida
end if
%>
<%
do until rsRecset.eof or intantal >= rsRecset.PageSize
intantal = intantal + 1
%>
<tr>
<td id="post" colspan="2" align="left" bgcolor="#ccd6e9" bordercolor="#76A9D4">
<!-- datumtabelltoppen-->
<table border="0" width="100%" cellspacing="0">
<tr>
<td><b><font color="#000000">Inlägg från besökare
<%
set rsCount = DinConn.execute("Select count(*) as antal from gast")
response.write rsCount("antal")
%>
</font></b></td><td align="right"><%
Session.LCID = 1053
Response.write cDate(rsrecset("dat"))
%></td><td width="1"> </td>
<td width="16"><a href="mailto:<%=rsRecset("email")%>">
<img src="../images/gbokiconmail.gif" border="0" alt="<%=rsRecset("email")%>" WIDTH="14" HEIGHT="14"></td>
<td width="16">
<a href="<%=rsRecset("www")%>" target="_blank">
<img src="../images/gbokiconwww.gif" border="0" alt="<%=rsRecset("www")%>" WIDTH="14" HEIGHT="14"></td>
</table></td>
</tr>
<tr>
<td class="gbsvar" width="15%">Namn:
<%=rsRecset("name")%> </td>
</tr>
<tr>
<td class="gbsvar" colspan="2">
<%=Replace(Server.HTMLEncode(rsRecset("message")),vbcrlf,"<BR>")%>
</td>
</tr>
<tr>
<td height="15"> </td>
</tr>
<tr><td colspan="2"><br>
<%
rsRecset.movenext
loop
%>
Sida: <%if rsRecset.Pagecount > 1 then
for i = 1 to rsRecset.PageCount
if i <> intsida then
Response.Write("<a href='gast_show.asp?sida=" & I & "' & > " & I & " </a>")
else
Response.Write(I & " " )
end if
next
end if
%>
</td></tr>
</table>
<%rsRecSet.Close%>
<%cnConn.Close%>
<%Set rsRecSet = Nothing%>
<%Set cnConn = Nothing%>
Såg du inte mitt kodexempel, som sagt gå efter det....:)
mackanz Medlem sedan sep. 2003 443 inlägg ursäkta men jag vill hellre bena ut vad som fel i min kod
Vad blir det för felmeddelande utöver det du sa förut?
mackanz Medlem sedan sep. 2003 443 inlägg Nu funkar nästan ;)
Nu loopas det upp att det är 870 inlägg, men sen vill man ju ha varje inlägg numrerat kanske???
Eller tycker ni det är onödigt????
Jag avhjälpte felet med att ändra dinconn tll CNconn
Jag har ju gett dig kod för det! Och jag sa ju att du SKULLE TA BORT DinCONN!
Tar det igen.....
<%
set connect = server.createobject("adodb.connection")
connect.open "Driver={Microsoft Access driver (*.mdb)};dbq=" & Server.MapPath("DATABASEN.mdb")
set rs = connect.execute("Select * from TABELLEN order by id desc")
set rsCount = connect.execute("Select count(*) as antal from TABELLEN")
count = rsCount("antal")
do until rs.eof
response.write "InläggNr: " & count & "<br><br>"
response.write "Inlägg: " & rs("INLÄGG") & "<br><br>"
count = count - 1
rs.movenext
loop
%>
Fick du det att fungera med inläggens nr?