Jah, du kan lave noget i PHP, ASP eller lignende. Eller man kan vist også finde nogle gratis-ting, som bare sættes ind med et javascript.
Men siden du har postet spørgsmålet i ASP kategorien går jeg udfra du vil lave det i ASP? :)
En simpel en kan laves med en access tabel ala: 1 autonummerering 2 navn (string 50) <-eller en anden længde.. husk at rette i formen nedenfor også. 3 kommentar (notat)
så laver du en html form med 2 felter: <input type=text name=navn maxlength=50> <textarea name=body></textarea>
i post-koden kan du lave en replace for at fjerne fejlmuligheder: navn=replace(request.form("navn"),"'","''") body=replace(request.form("body"),"'","''")
så indsætter du i db:
conn.execute "insert into tabel (navn,kommentar)values('"&navn&"','"&body&"')"
Derefter mangler du bare visningen.
Skal den fungere som kommentarsystem i stedet for tagwall tilføjer du et felt, f.eks.
4 kategori (string 20)
når du poster kommentaren, vedhæfter du et kategori navn, og i visningen filtrerer du på kategorien for kun at se den aktuelle.
Husk at sætte en sorteringsnøgle på kategori feltet.
If Request.QueryString("mode") = "new" Then navn = Request.Form("navn") besked1 = Request.Form("besked") besked1 = Replace(besked1, "'", "''") besked1 = Replace(besked1, vbCrLf, "xbr") besked = besked1
If navn="" Or besked="" then Response.Write "<b>Du skal udfylde alle felter!</b>" Else strSQL="INSERT INTO tagwall (navn,besked) VALUES('" & navn & "','" & besked & "')" Conn.Execute(strSQL)
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'kategori='.
/eksperten/default.asp, line 7
<title></title> <a href="skriv.asp"><b>Klik her</b></a> for at kommenter anmeldelsen .<br><br> <% Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("db1.mdb") strSQL = "Select * from tagwall where kategori="&kategori set rs = Conn.execute(strSQL)
if rs.EOF then Response.write "Der er ingen tags i tagwallen." else Do Until rs.EOF %> <b>Besked nummer:</b> <%=RS("id")%><br> <b>Skrevet af:</b> <%=RS("navn")%><br> <b>Besked:</b> <%=RS("besked")%><br><br><%RS.MoveNext Loop end if
If Request.QueryString("mode") = "new" Then navn = Request.Form("navn") besked1 = Request.Form("besked") besked1 = Replace(besked1, "'", "''") besked1 = Replace(besked1, vbCrLf, "xbr") besked = besked1
If navn="" Or besked="" then Response.Write "<b>Du skal udfylde alle felter!</b>" Else strSQL="INSERT INTO tagwall (navn,besked,kategori) VALUES('" & navn & "','" & besked & "'," & kategori & ")" Conn.Execute(strSQL)
Nåh, jammen vent du bruger stadig en variabel som hedder kategori, men som ikke er defineret nogen steder..
kategori=request.querystring("id") strSQL="INSERT INTO tagwall (navn,besked,kategori) VALUES('" & navn & "','" & besked & "'," & kategori & ")" Conn.Execute(strSQL)
du skal have sat variablen "kategori" til at være det du bruger som kategori. Det skal være det samme felt du filtrerer på, når du vil vise kommentarene for samme kategori.
If Request.QueryString("mode") = "new" Then navn = Request.Form("navn") besked1 = Request.Form("besked") besked1 = Replace(besked1, "'", "''") besked1 = Replace(besked1, vbCrLf, "xbr") besked = besked1 kategori=request.querystring("id") If navn="" Or besked="" then Response.Write "<b>Du skal udfylde alle felter!</b>" Else
strSQL="INSERT INTO tagwall (navn,besked,kategori) VALUES('" & navn & "','" & besked & "'," & kategori & ")" Conn.Execute(strSQL)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <title>Formular !</title> <head> </head> <body> <dl> <dt> </dt> <dd> <table width="50%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td> </td> </tr> <tr> <td> <% ' Databaseforbindelse - husk at angive sti til din database Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath ("10.mdb") Conn.Open DSN
' Hent fra databasen afhængig af værdien id fra URL strSQL = "Select * From dittabelnavn Where Id = " & Request.Querystring("id") Set rs = Conn.Execute(strSQL)
' Skriv personens data Response.Write "<b>" & "<dt>Produkt : </dt>" & "</b>" & rs("produkt") Response.Write "<b>" & "<dt>Indsendt af : </dt>" & "</b>" & rs("navn") & " " & rs("dato") Response.Write "<b>" & "<dt>Karakter : </dt>" & "</b>" for i = 1 to CInt(rs("karakter")) response.write "<img src=""orange.gif"">" next Response.Write "<b>" & "<dt>Bedømmelse:</dt><dd>" & "</b>" & rs("beskrivelse") & "</dd>" Response.Write "<b>" & "<dt>Pris : </dt>" & "</b>" & rs("pris") billed_url = rs("url") if billed_url<>"" then Response.write "<tr><td colspan='2'><img src='" & billed_url & "'></a></td></tr>" end if
Hmm, nu kan jeg se du har formen på "Mary Magdalene" siden. Udemærket.
1. Fjern teksten "Klik her for at kommenter anmeldelsen". 2. Følgene linie i den side ændres: fra: <form action="skriv.asp?mode=new" method="post"> til: <form action="skriv.asp?mode=new&id=<id'et fra URL>" method="post">
Mortvader jeg håber du holder ud endnu ... for jeg kan stadig ikke får det til at virke, nu har jeg tilføjet begge sider "Mary Magdalene" siden
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <title>Formular !</title> <head> </head> <body> <dl> <dt> </dt> <dd> <table width="50%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td> </td> </tr> <tr> <td> <% ' Databaseforbindelse - husk at angive sti til din database Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath ("10.mdb") Conn.Open DSN
' Hent fra databasen afhængig af værdien id fra URL strSQL = "Select * From dittabelnavn Where Id = " & Request.Querystring("id") Set rs = Conn.Execute(strSQL)
' Skriv personens data Response.Write "<b>" & "<dt>Produkt : </dt>" & "</b>" & rs("produkt") Response.Write "<b>" & "<dt>Indsendt af : </dt>" & "</b>" & rs("navn") & " " & rs("dato") Response.Write "<b>" & "<dt>Karakter : </dt>" & "</b>" for i = 1 to CInt(rs("karakter")) response.write "<img src=""orange.gif"">" next Response.Write "<b>" & "<dt>Bedømmelse:</dt><dd>" & "</b>" & rs("beskrivelse") & "</dd>" Response.Write "<b>" & "<dt>Pris : </dt>" & "</b>" & rs("pris") billed_url = rs("url") if billed_url<>"" then Response.write "<tr><td colspan='2'><img src='" & billed_url & "'></a></td></tr>" end if
<%' HER ER VISNING SIDEN Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("db1.mdb") strSQL = "Select * from tagwall where kategori="&request.querystring("id")
set rs = Conn.execute(strSQL)
if rs.EOF then Response.write "Der er ingen kommentar til anmeldelsen !" else Do Until rs.EOF %> <b>Besked nummer:</b> <%=RS("id")%><br> <b>Skrevet af:</b> <%=RS("navn")%><br> <b>Besked:</b> <%=RS("besked")%><br><br><%RS.MoveNext Loop end if
Conn.Close Set Conn = Nothing%> </div></td> </tr> <tr>
<td> <form action="skriv.asp?mode=new&id=<id'et fra URL>" method="post">
<%' HER ER FORMSIDEN DBPATH = "DBQ=" & Server.MapPath("db1.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}" Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open DBPATH
If Request.QueryString("mode") = "new" Then navn = Request.Form("navn") besked1 = Request.Form("besked") besked1 = Replace(besked1, "'", "''") besked1 = Replace(besked1, vbCrLf, "xbr") besked = besked1 kategori=request.querystring("id") If navn="" Or besked="" then Response.Write "<b>Du skal udfylde alle felter!</b>" Else
strSQL="INSERT INTO tagwall (navn,besked,kategori) VALUES('" & navn & "','" & besked & "'," & kategori & ")" Conn.Execute(strSQL)
Jeg har dog skiftede den til <form action="form1.asp?mode=new&id=<%=request.querystring("id")%>" method="post">
så man bliver på siden efter man har tilføjet en kommentar, det eneste minus er, at den ikke opdater efter tilføjes, jeg ved ikke om man kan lave så den opdater automatisk ???
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.