Panelen



Forumnavigering
Senast inloggade
RSS
Sponsorer
Artiklar > ASP

Bygg en enkel gästbok i asp

Inledning:

I den här artikeln tänkte jag visa hur du kan bygga en enkel gästbok i asp. Gästboken kommer att bestå av inlägg, alltså inget administrations system. Vi ska börja med att skapa våran databas som kommer att vara i access format.


Databasen:

Struktur:

 gbID  gbText  gbDate  gbFrom
 (AutoNumber)  Memo  Date/Time  Text(50)

gbID = Automatiskt ID
gbText = Gästboks inlägget
gbDate = Datumet då inläggets postades
gbFrom = Personens namn som postade inlägget

Spara tabellen som tblGb och databasen som gastbok.mdb.


Form.asp:

<form method="post" action="add.asp">

 Skriv inlägg:<br><br>

 <input type="text" name="gbFrom" maxlength="50"><br>

 <textarea name="gbText"></textarea><br>

 <input type="submit" value="Spara">

</form>


Detta är formen vi använder när vi ska skriva allt som ska stoppas in i databasen. gbFrom är inställd på max 50 tecken så att det inte blir något fel när vi ska stoppa in allt.


Add.asp:

<%

' Först deklarera variablar

Dim strFrom,strText

 strFrom = Request.Form("gbFrom")

 strText = Request.Form("gbText")



' Skydd mot sql injection

Function SqlSafe(ByVal strText)

 strText = Replace(strText,"'","")

 strText = Replace(strText,"\","\\")

 strText = Replace(strText,";","")

 SqlSafe = strText

End Function



' Kolla att fälten från Form.asp inte var tomma

If Trim(strFrom) = "" And Trim(strText) = "" Then

 Else



 ' Deklarera variabel och skapa databas koppling

 Dim Connect,Sql

 Set Connect = Server.CreateObject("ADODB.Connection")

 Connect.Open = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("gastbok.mdb") &";"

 

 ' Själva sql:en där vi stoppar in informationen till databasen

 Sql = ""

 Sql = "Insert Into tblGb (gbText,gbDate,gbFrom) Values ('"& SqlSafe(strText) &"','"& Date() &"','"& SqlSafe(strFrom) &"')"

 Connect.Execute(Sql)

 

 ' Stäng databasen

 Connect.Close()

 Set Connect = Nothing

End If



 ' Skicka vidare till startsidan

 Response.Redirect "Index.asp"

%>


Nu har vi gjort klart koden som stoppar in all information till databasen, nu ska vi skriva koden som visar alla poster som finns i databasen redan.


Index.asp:

<%

' Bra att ha för att se vart man har sina variablar

Option Explicit



' Sätter språket till svenska

Session.LCID = 1053

Response.Buffer = True

%><html>

<head>

 <title>Bygg en enkel gästbok i asp</title>

</head>

<body>

<!-- #Include File="Form.asp" -->

<hr size="1">

<table width="450" border="0" cellspacing="0" cellpadding="0"><%

 ' Deklarera variblar och skapa databas koppling

 Dim Connect,Sql,RS

 Set Connect = Server.CreateObject("ADODB.Connection")

 Connect.Open = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("gastbok.mdb") &";"

 

 ' Sql:en som hämtar alla inlägg ifrån databasen

 Sql = ""

 Sql = "Select gbText,gbDate,gbFrom From tblGb Order by gbDate Asc"

 Set RS = Connect.Execute(Sql)

 

 ' Så länge databasen inte är tom så loopar vi ut alla poster

 Do Until RS.Eof

 %>

 <tr>

  <td width="310" align="left"><strong><% =RS(2) %></strong></td>

  <td width="140" align="right"><% =FormatDateTime(RS(1),1) %></td>

 </tr>

 <tr>

  <td colspan="2" align="left"><% =Replace(RS(0),VbCrlf,"<br>") %></td>

 </tr>

 <tr>

  <td colspan="2"><hr size="1"></td>

 </tr><%

 ' Gå till nästa post och fortsätt loopa

 RS.MoveNext

 Loop

 

 ' Stäng aktuellt recordset

 RS.Close()

 Set RS = Nothing

 

 ' Stäng databasen

 Connect.Close()

 Set Connect = Nothing

%>

</table>

</body>

</html>


Denna kod loopar ut ALLA poster som finns i databasen och sorterar dem efter datum.

Sådär, nu har vi en väldigt enkel gästbok med databas. Har du frågor eller synpunkter så kan du bara skicka ett pm eller slänga iväg ett mail.

Skapades: 2007-08-13 10:50:25
Skribent: Gimbergsson
Lästs 1473 gånger
Betyg: 0 (artikeln har endast 0 röster, det krävs minst 5 för ett betyg)

Kommentarer

Pettersoft sa den 23 december 2007 kl 13:07:
Har du något annat vis att göra databasen på, jag har inte access-
© Copyright 2007-2009 Shadi Domat | Version 3.0 | Sidkarta | Policy