Just nu i M3-nätverket
Jump to content

Skriv ut senaste inlägg ifrån gästbok


eko

Recommended Posts

Tjao.

 

Jag har sökt här i forumet men hittar ingen hjälp på detta.

Hur gör jag för att skriva ut det senaste inlägget i min gästbok på min förstasida? Här är koden för guestbook.asp Databasen finns på db/guestbook.mdb

 

På min startsida skulle jag vilja att det står:

Senaste inlägget i gästboken skrevs utav "Namn" <br><br>

"Meddelande"

 

<%Response.Buffer = True%> 
<!-- #include file=[GRÅ]"include/installning.asp"[/GRÅ] --> 
<!-- #include file=[GRÅ]"include/link.asp"[/GRÅ] --> 

<%Function FixaTecken(str) 
FixaTecken = [color="#0000ff"]Replace[/color]([color="#0000ff"]Trim[/color](str),[GRÅ]"'"[/GRÅ],[GRÅ]"''"[/GRÅ]) 
[color="#0000ff"]End[/color] [color="#0000ff"]Function[/color] 

[color="#0000ff"]Set[/color] Conn = [b]Server[/b].[color="#0000ff"]CreateObject[/color]([GRÅ]"ADODB.Connection"[/GRÅ]) 
Conn.Open [GRÅ]"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="[/GRÅ] & db 

[color="#0000ff"]If[/color] [b]Request[/b].Querystring([GRÅ]"do"[/GRÅ])= [GRÅ]""[/GRÅ] Then%>
<BR>
<table width=[GRÅ]"502"[/GRÅ] border=[GRÅ]"0"[/GRÅ]>
  <form method=[GRÅ]"post"[/GRÅ] action=[GRÅ]"guestbook.asp?do=add"[/GRÅ] name=[GRÅ]"gastbok"[/GRÅ] onSubmit=[GRÅ]"return GbIn()"[/GRÅ]> 
<tr> 
      <td height=[GRÅ]"15"[/GRÅ]> Name<br> 
<input type=[GRÅ]"text"[/GRÅ] name=[GRÅ]"namn"[/GRÅ] size=[GRÅ]"48"[/GRÅ]> </td></tr> <tr> <td> <div align=[GRÅ]"left"[/GRÅ]> 
          E-mail <br>
           <input type=[GRÅ]"text"[/GRÅ] name=[GRÅ]"email"[/GRÅ] size=[GRÅ]"48"[/GRÅ]> 
</div></td></tr> <tr> <td> <div align=[GRÅ]"left"[/GRÅ]> Homepage<br> 
<input type=[GRÅ]"text"[/GRÅ] name=[GRÅ]"hemsida"[/GRÅ] size=[GRÅ]"48"[/GRÅ]> </div></td></tr> <tr> <td height=[GRÅ]"19"[/GRÅ] valign=[GRÅ]"top"[/GRÅ]> 
<div align=[GRÅ]"left"[/GRÅ]> Message<br> 
          <textarea name=[GRÅ]"Meddelande"[/GRÅ] cols=[GRÅ]"50"[/GRÅ] rows=[GRÅ]"10"[/GRÅ]></textarea>
           </div></td></tr> <tr> 
<td valign=[GRÅ]"top"[/GRÅ]> <input type=[GRÅ]"image"[/GRÅ] border=[GRÅ]"0"[/GRÅ] name=[GRÅ]"Posta inlägg"[/GRÅ] src=[GRÅ]"graphic/posta.gif"[/GRÅ] WIDTH=[GRÅ]"92"[/GRÅ] HEIGHT=[GRÅ]"21"[/GRÅ]> 
<br> <br> </td></tr> </form></table>
<table width=[GRÅ]"502"[/GRÅ] border=[GRÅ]"0"[/GRÅ] cellpadding=[GRÅ]"2"[/GRÅ] cellspacing=[GRÅ]"0"[/GRÅ]>
  <%Set Recset = [b]Server[/b].[color="#0000ff"]CreateObject[/color]([GRÅ]"ADODB.Recordset"[/GRÅ]) 

[color="#0000ff"]Const[/color] gbaps = 25 
Sidan = [b]Request[/b].QueryString([GRÅ]"page"[/GRÅ]) 
[color="#0000ff"]If[/color] Sidan = [GRÅ]""[/GRÅ] [color="#0000ff"]Then[/color] 
sida = 1 
[color="#0000ff"]Else[/color] 
sida = Sidan 
[color="#0000ff"]End[/color] [color="#0000ff"]If[/color] 

[color="#0000ff"]With[/color] RecSet 
.CursorLocation = 3 
.CacheSize = gbaps 
[color="#0000ff"]End[/color] [color="#0000ff"]With[/color] 

SQL = [GRÅ]"Select * From inlagg Order By datum desc"[/GRÅ] 
RecSet.Open SQL, Conn 

[color="#0000ff"]If[/color] RecSet.EOF Then%> <tr> <td><i>Inget har skrivit i gästboken.</i></td></tr> 
<%Else 

[color="#0000ff"]With[/color] RecSet 
.MoveFirst 
.PageSize = gbaps 
.AbsolutePage = sida 
[color="#0000ff"]End[/color] [color="#0000ff"]With[/color] 

Sidor = RecSet.PageCount 

[color="#0000ff"]If[/color] Sidor > 1 Then%> <tr> <td valign=[GRÅ]"top"[/GRÅ]> </td></tr> <%End [color="#0000ff"]If[/color] 

X = 0 
[color="#0000ff"]Do[/color] [color="#0000ff"]While[/color] [color="#0000ff"]Not[/color] RecSet.EOF [color="#0000ff"]And[/color] X < RecSet.PageSize%> <tr> 
    <td><img src=[GRÅ]"graphic/hr3d.gif"[/GRÅ] width=[GRÅ]"346"[/GRÅ] height=[GRÅ]"3"[/GRÅ]></td>
  </tr> 
<%If Recset([GRÅ]"Email"[/GRÅ]) <> [GRÅ]""[/GRÅ] Then%> <tr> 
    <td><font color=[GRÅ]"#000000"[/GRÅ]>|</font> <b><a href=[GRÅ]"mailto:<%=Recset("[/GRÅ]Email[GRÅ]")%>"[/GRÅ]>[MÄRK]<%[/MÄRK]=Recset([GRÅ]"Namn"[/GRÅ])[MÄRK]%>[/MÄRK]</a></b> <font color=[GRÅ]"#000000"[/GRÅ]>|</font> 
[MÄRK]<%[/MÄRK]=[color="#0000ff"]FormatDateTime[/color](Recset([GRÅ]"Datum"[/GRÅ]),4)[MÄRK]%>[/MÄRK] <font color=[GRÅ]"#000000"[/GRÅ]>|</font> [MÄRK]<%[/MÄRK]=[color="#0000ff"]FormatDateTime[/color](Recset([GRÅ]"Datum"[/GRÅ]),2)[MÄRK]%>[/MÄRK] 
<font color=[GRÅ]"#000000"[/GRÅ]>|</font> <a href=[GRÅ]"http://www.leissner.se/cgi/whois?text=<%=Recset("[/GRÅ]ip[GRÅ]")%>&c=eu"[/GRÅ] target=[GRÅ]"blank"[/GRÅ]>[MÄRK]<%[/MÄRK]=Recset([GRÅ]"ip"[/GRÅ])[MÄRK]%>[/MÄRK]</a> 
<%If RecSet([GRÅ]"Hemsida"[/GRÅ]) <> [GRÅ]""[/GRÅ] Then%> <font color=[GRÅ]"#000000"[/GRÅ]>|</font> <a href=[GRÅ]"<%=RecSet("[/GRÅ]Hemsida[GRÅ]")%>"[/GRÅ] target=[GRÅ]"_blank"[/GRÅ]> 
<b>[MÄRK]<%[/MÄRK]=[color="#0000ff"]Mid[/color](RecSet([GRÅ]"Hemsida"[/GRÅ]),8,50)[MÄRK]%>[/MÄRK]</b> </a> <%End If%>
    </td>
  </tr> <tr> 
    <td><img src=[GRÅ]"graphic/hr3d.gif"[/GRÅ] width=[GRÅ]"346"[/GRÅ] height=[GRÅ]"3"[/GRÅ]></td>
  </tr> 
<%Else%> <tr> 
    <td><font color=[GRÅ]"#000000"[/GRÅ]>|</font> <b>[MÄRK]<%[/MÄRK]=Recset([GRÅ]"Namn"[/GRÅ])[MÄRK]%>[/MÄRK]</b> <font color=[GRÅ]"#000000"[/GRÅ]>|</font> [MÄRK]<%[/MÄRK]=[color="#0000ff"]FormatDateTime[/color](Recset([GRÅ]"Datum"[/GRÅ]),4)[MÄRK]%>[/MÄRK] 
<font color=[GRÅ]"#000000"[/GRÅ]>|</font> [MÄRK]<%[/MÄRK]=[color="#0000ff"]FormatDateTime[/color](Recset([GRÅ]"Datum"[/GRÅ]),2)[MÄRK]%>[/MÄRK] <font color=[GRÅ]"#000000"[/GRÅ]>|</font> 
<a href=[GRÅ]"http://www.leissner.se/cgi/whois?text=<%=Recset("[/GRÅ]ip[GRÅ]")%>&c=eu"[/GRÅ] target=[GRÅ]"blank"[/GRÅ]>[MÄRK]<%[/MÄRK]=Recset([GRÅ]"ip"[/GRÅ])[MÄRK]%>[/MÄRK]</a> 
<%If RecSet([GRÅ]"Hemsida"[/GRÅ]) <> [GRÅ]""[/GRÅ] Then%> <font color=[GRÅ]"#000000"[/GRÅ]>|</font> <a href=[GRÅ]"<%=RecSet("[/GRÅ]Hemsida[GRÅ]")%>"[/GRÅ] target=[GRÅ]"_blank"[/GRÅ]> 
<b>[MÄRK]<%[/MÄRK]=[color="#0000ff"]Mid[/color](RecSet([GRÅ]"Hemsida"[/GRÅ]),8,50)[MÄRK]%>[/MÄRK]</b> </a> <%End If%>
    </td>
  </tr> <tr> 
    <td><img src=[GRÅ]"graphic/hr3d.gif"[/GRÅ] width=[GRÅ]"346"[/GRÅ] height=[GRÅ]"3"[/GRÅ]></td>
  </tr> 
<%End If%> <tr> 
    <td>[MÄRK]<%[/MÄRK]=FixaLankar(RecSet([GRÅ]"Meddelande"[/GRÅ]))[MÄRK]%>[/MÄRK]</td>
  </tr> 
<%If Recset([GRÅ]"svar"[/GRÅ]) <> [GRÅ]""[/GRÅ] Then%> <tr> <td> </td></tr> <tr> <td>melody club:<b> 
</b><i>[MÄRK]<%[/MÄRK]=[color="#0000ff"]Replace[/color](RecSet([GRÅ]"svar"[/GRÅ]), vbCrLf, [GRÅ]"<br>"[/GRÅ])[MÄRK]%>[/MÄRK]</i></td></tr> <%End If%> <%X = X+ 1 
Recset.MoveNext 
[color="#0000ff"]Loop[/color] 
[color="#0000ff"]If[/color] Sidor > 1 Then%> <tr> 
    <td><img src=[GRÅ]"graphic/hr3d.gif"[/GRÅ] width=[GRÅ]"346"[/GRÅ] height=[GRÅ]"3"[/GRÅ]></td>
  </tr> 
<tr> <td valign=[GRÅ]"top"[/GRÅ]> <%For Sid = 1 [color="#0000ff"]To[/color] Sidor 
[color="#0000ff"]If[/color] (Int(Sid)) = (Int(sida)) Then%> <font color=[GRÅ]"#CCCCCC"[/GRÅ]>[MÄRK]<%[/MÄRK]=Sid%></font> <%Else%> 
<a href=[GRÅ]"?NODE=11&page=<%=Sid%>"[/GRÅ]>[MÄRK]<%[/MÄRK]=Sid%></a> <%End [color="#0000ff"]If[/color] 
Next%> </td></tr> <tr> <td valign=[GRÅ]"top"[/GRÅ]> </td></tr> </table><%End [color="#0000ff"]If[/color] 
Recset.Close 
[color="#0000ff"]Set[/color] Recset = [color="#0000ff"]Nothing[/color] 
[color="#0000ff"]End[/color] [color="#0000ff"]If[/color] 

[color="#0000ff"]End[/color] [color="#0000ff"]If[/color] 
[color="#0000ff"]If[/color] [b]Request[/b].QueryString([GRÅ]"do"[/GRÅ])= [GRÅ]"add"[/GRÅ] [color="#0000ff"]Then[/color] 

Namn = [b]Request[/b].Form([GRÅ]"namn"[/GRÅ]) 
Email = [b]Request[/b].Form([GRÅ]"email"[/GRÅ]) 
Hemsida = [b]Request[/b].Form([GRÅ]"hemsida"[/GRÅ]) 
Meddelande = FixaTecken([b]Request[/b].Form([GRÅ]"meddelande"[/GRÅ])) 
Ip = [b]Request[/b].Servervariables([GRÅ]"REMOTE_ADDR"[/GRÅ]) 

[color="#0000ff"]If[/color] Hemsida <> [GRÅ]""[/GRÅ] [color="#0000ff"]Then[/color] 
[color="#0000ff"]If[/color] [color="#0000ff"]Left[/color](Hemsida,7) = [GRÅ]"http://"[/GRÅ] [color="#0000ff"]Then[/color] 
Hemsida = Hemsida 
[color="#0000ff"]Else[/color] 
Hemsida = [GRÅ]"http://"[/GRÅ] & Hemsida 
[color="#0000ff"]End[/color] [color="#0000ff"]If[/color] 
[color="#0000ff"]End[/color] [color="#0000ff"]If[/color] 

Conn.[color="#0000ff"]Execute[/color]([GRÅ]"Insert Into inlagg(Namn, Email, Hemsida, Meddelande,ip) Values('"[/GRÅ]& Namn &[GRÅ]"','"[/GRÅ]& Email &[GRÅ]"','"[/GRÅ]& Hemsida &[GRÅ]"','"[/GRÅ]&Meddelande &[GRÅ]"','"[/GRÅ]& Ip &[GRÅ]"')"[/GRÅ]) 

Conn.Close 
[color="#0000ff"]Set[/color] Conn = [color="#0000ff"]Nothing[/color] 

[b]Response[/b].Redirect [GRÅ]"?NODE=11"[/GRÅ] 

[color="#0000ff"]End[/color] If%>

 

Link to comment
Share on other sites

[color="#0000ff"]Select[/color] * FROM inlagg 
WHERE (datum =([color="#0000ff"]Select[/color] MAX(datum) FROM inlagg))

 

 

 

Link to comment
Share on other sites

Du får skapa en connection och ett recordset precis som du har gjort i koden som du klistrade in här.

 

sen får du använda min sql sats och visa resultatet på första sidan.

 

<%Set Con = [b]Server[/b].[color="#0000ff"]CreateObject[/color]([GRÅ]"ADODB.Connection"[/GRÅ]) 
Con.Open [GRÅ]"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="[/GRÅ] & db 
SQL = [GRÅ]"Select * FROM inlagg WHERE (datum =(Select MAX(datum) FROM inlagg))"[/GRÅ]

[color="#0000ff"]Set[/color] Rs = [b]Server[/b].[color="#0000ff"]CreateObject[/color]([GRÅ]"ADODB.Recordset"[/GRÅ])
Rs.Open  SQL, Con

[color="#006400"]'Här skriver du ut data från sista inlägget. [/color]
[color="#006400"]'osv........[/color]
[MÄRK]%>[/MÄRK]

 

 

[inlägget ändrat 2005-01-02 22:57:37 av Mentor]

Link to comment
Share on other sites

Jag har inte skrivit koden över helt på egen hand och har inte superkoll på hur den funkar. Förstår bara vissa bitar och är inte så haj på asp ännu... Vilken del utav min kod är "connection och ett recordset"?

 

<%Set Con = [b]Server[/b].[color="#0000ff"]CreateObject[/color]([GRÅ]"ADODB.Connection"[/GRÅ]) 
Con.Open [GRÅ]"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="[/GRÅ] & db 
SQL = [GRÅ]"Select * FROM inlagg WHERE (datum =(Select MAX(datum) FROM inlagg))"[/GRÅ]

[color="#0000ff"]Set[/color] Rs = [b]Server[/b].[color="#0000ff"]CreateObject[/color]([GRÅ]"ADODB.Recordset"[/GRÅ])
Rs.Open SQL, Con

[MÄRK]<%[/MÄRK]=Recset([GRÅ]"Namn"[/GRÅ])[MÄRK]%>[/MÄRK] <br>
[MÄRK]<%[/MÄRK]=(RecSet([GRÅ]"Meddelande"[/GRÅ])[MÄRK]%>[/MÄRK]
[MÄRK]%>[/MÄRK]

 

Man skriver ut såhär va? tex <%=Recset("Namn")%>

 

Tack för erat tålamod...

 

Link to comment
Share on other sites

Rest man Klaymen

fick problem med postningen... vet inte vad som hände men nu funkar det visst

[inlägget ändrat 2005-01-03 08:32:27 av Rest man Klaymen]

Link to comment
Share on other sites

Rest man Klaymen

connection är din Con = ADODB.Connection

Recordset är din Rs = ADODB.Recordset

 

SQL-satsen bestämmer vilka poster som ska hämtas ur databasen:

 

SQL = [GRÅ]"Select * FROM inlagg WHERE (datum =(Select MAX(datum) FROM inlagg))"[/GRÅ]

 

dvs hämta alla inlägg där datumet är det maximala i hela tabellen

 

sedan öppnar du Con och SQL med recordset:

 

Rs.Open SQL, Con 

 

för att sedan skriva ut det som finns i recordset skriver du:

 

[MÄRK]<%[/MÄRK]=Rs([GRÅ]"db-fält"[/GRÅ])[MÄRK]%>[/MÄRK]

 

eftersom det nu bara är en post i recordsetet räcker det att bara skriva så här.. om det hade varit flera hade du fått göra en loop:

 

[color="#0000ff"]Do[/color] Until Rs.EOF [MÄRK]%>[/MÄRK]

[MÄRK]<%[/MÄRK]=Rs([GRÅ]"namn"[/GRÅ])[MÄRK]%>[/MÄRK] har skrivit<br>
[MÄRK]<%[/MÄRK]=Rs([GRÅ]"meddelande"[/GRÅ])[MÄRK]%>[/MÄRK]
<br><br>

[MÄRK]<%[/MÄRK] Rs.MoveNext
[color="#0000ff"]Loop[/color]

Rs.Close [MÄRK]%>[/MÄRK]

 

Det jag gör här är att jag skapar en slinga som fortsätter tills Rs är slut (EOF = EndOfFile) Sedan skriver jag ut det som står i översta posten, gör en movenext (för att rs ska flytta vidare till nästa post) och sedan loop (så börjar den om från do until igen (fast nu på nästa post) ända tills rs är slut och då stägner jag rs (rs.close)

 

hoppas det var till någon hjälp!

 

 

/ RMK

Jobbiga_färger.

[inlägget ändrat 2005-01-03 08:33:30 av Rest man Klaymen]

[inlägget ändrat 2005-01-03 08:35:01 av Rest man Klaymen]

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...