Re: Gjestebok [
Besvar ]
Av: Øyvind A. IsaksenDu vil trenge 2 filer for å lage en gjestebok. Den ene fila (her:gjestebok.asp) viser gjesteboken til brukeren, den andre fila (her:gjestebok_lagre.asp) lagrer nye innlegg. I dette eksempelet er det brukt Access database, skal du bruke SQL-server er det kun å forandre på connection-strengen (søk under "kode" på WebRessurs). Databasen består av 4 kolonner: ID, Navn, Epost og Melding.
-----------------------------------
Fil 1: gjestebok.asp:
-----------------------------------
<%
connString="provider=Microsoft.Jet.OLEDB.4.0; data source=" & Server.MapPath("gjestebok.mdb") & ";"
%>
<h1>Skriv en liten hilsen</h1>
<form action="gjestebok_lagre.asp" method="post">
<table border="0" cellpadding="3" cellspacing="0">
<tr>
<td>Ditt navn:</td>
<td><input type="text" size="25" name="txtNavn" value="<%=navn%>"></td>
</tr>
<tr>
<td>Din Epost:</td>
<td><input type="text" size="25" name="txtEpost" value="<%=epost%>"></td>
</tr>
<tr>
<td valign="top">Din hilsen:</td>
<td><textarea cols="45" rows="5" name="txtMelding"><%=melding%></textarea></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" value="Legg inn"></td>
</tr>
</table>
</form>
<%
SQL="Select Navn, epost, melding from tblGjestebok order by id desc"
set rsGjestebok = server.CreateObject("ADODB.Recordset")
rsGjestebok.Open SQL,Connstring
do while not rsGjestebok.EOF
navn = rsGjestebok.Fields("Navn")
epost = rsGjestebok.Fields("epost")
melding = rsGjestebok.Fields("melding")
Response.Write("<b>"&melding&"</b><br>")
Response.Write("<small>Skrevet av: "&navn&"</small><br>")
Response.Write("<small>Epost: <a href=""mailto:"&epost&""">"&epost&"</a></small><hr size=""1"">")
rsGjestebok.MoveNext
loop
rsGjestebok.Close
set rsGjestebok = nothing
%>
-----------------------------------
Fil 2: gjestebok_lagre.asp:
-----------------------------------
<%
connString="provider=Microsoft.Jet.OLEDB.4.0; data source=" & Server.MapPath("gjestebok.mdb") & ";"
'-----Sikkerhet start-----
navn = Request.Form("txtNavn")
navn = replace(navn,"'","")
epost = Request.Form("txtEpost")
epost = replace(epost,"'","")
melding = Request.Form("txtMelding")
melding = replace(melding,"'","")
'-----Sikkerhet slutt-----
SQL = "Insert into tblGjestebok (Navn,epost,melding) Values ('"&navn&"','"&epost&"','"&melding&"')"
set cnLeggInn = Server.CreateObject("ADODB.Connection")
cnLeggInn.Open ConnString
cnLeggInn.Execute SQL
cnLeggInn.Close
set cnLeggInn = nothing
Response.Redirect("gjestebok.asp")
%>
Håper dette gjør susen! Får du problemer så si ifra. Jeg har ikke testet denne koden, men den skal fungere etter mitt skjønn :) Lykke til!