Ännu en gammal tråd att återuppliva. Jag har testat det här för att försöka få in smileys i min gästbok. Men exakt var i koden skriver man den här (i tidigare inlägg nämnda) smileykoden?
Såhär ser hela koden ut:
<%Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db
If Request.Querystring("do")= "" Then%>
<table border="0" width="400" align="center" cellpadding="3" cellspacing="10">
<form method="post" action="<%=INC%>?do=add" name="gastbok" onSubmit="return Gb()">
<tr>
<td colspan="2" style="border-bottom: 1px solid #006666"><font size="3"><b>
<p><div align="center"><div class="titel">Gästbok / Guestbook</div></p></b></font>
<p> </p>
</td>
</tr>
<tr>
<td>Ditt namn / Your name:<br><input type="text" name="rubrik" size="25"></td>
<td>Plats / Location:<br><input type="text" name="namn" size="25"></td>
</tr>
<tr>
<td>Din e-mail / Your e-mail:<br><input type="text" name="mail" size="25"></td>
<td>Hemsida / Homepage:<br><input type="text" name="url" size="25"></td>
</tr>
<tr>
<td valign="top" colspan="2">Meddelande / Message:<br><textarea name="msg" cols="60" rows="8"></textarea></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Skicka / Send"></td>
</tr>
</form>
</table>
<%Set Recset = Server.CreateObject("ADODB.Recordset")
' Sidscriptet är nerladdat från [url]http://www.fatmilk.nu/[/url]
' Skrivet av Ludvig "geek" Lindblom
' [email]geek@fatmilk.nu[/email]
Sidan = Request.QueryString("next")
If Sidan = "" then
sida = 1
Else
sida = Sidan
End If
With RecSet
.CursorLocation = 3
.CacheSize = InlaggPerSida
End With
SQL = "Select * From gastbok Order By datum desc"
RecSet.Open SQL, Conn
If RecSet.EOF Then%>
<br>
<table border="0" width="400" align="center" cellpadding="3" cellspacing="0">
<tr>
<td><i>Ingen har skrivit i gästboken.</i></td>
</tr>
</table>
<%Else%>
<br>
<%With RecSet
.MoveFirst
.PageSize = InlaggPerSida
.AbsolutePage = sida
End With
Sidor = RecSet.PageCount
If Sidor > 1 Then%>
<table border="0" width="400" align="center" cellpadding="3" cellspacing="0" style="border: 1px solid #006666">
<tr>
<td valign="top" bgcolor="#D0F0D6">
<%For Sid = 1 To Sidor
If (Int(Sid)) = (Int(sida)) Then%><b><%=FixDigits(Sid,2)%></b><%Else%> <a href="<%=INC%>?next=<%=Sid%>"><%=FixDigits(Sid,2)%></a> <%End If
Next%>
</td>
</tr>
</table>
<br>
<%End If
X = 0
Do While Not RecSet.EOF And X < RecSet.PageSize%>
<table border="0" width="400" align="center" cellpadding="5" cellspacing="0" style="border: 1px solid #006666">
<tr>
<td bgcolor="#D0F0D6" width="400"><b><%=Recset("rubrik")%></b> | <%=Recset("namn")%></td><td align="right" bgcolor="#D0F0D6" width="100"><img src="bilder/klocka.gif" border="0" alt="<%=FormatDateTime(RecSet("datum"),2)%> (<%=FormatDateTime(RecSet("datum"),4)%>)"> <%If RecSet("url") <> "" Then%><a href="<%=RecSet("url")%>" target="_blank"><img src="bilder/homepg.gif" border="0" alt="<%=RecSet("url")%>"></a> <%End If%><%If RecSet("mail") <> "" Then%><a href="mailto:<%=RecSet("mail")%>"><img src="bilder/email.gif" border="0" alt="<%=RecSet("mail")%>"></a><%End If%></td>
</tr>
<tr>
<td colspan="2" bgcolor="#FFFFFF"><%=Link(RecSet("msg"))%></td>
</tr>
<%If Recset("svar") <> "" Then%>
<tr>
<td colspan="2" bgcolor="#FFFFFF" align="center">
<table><tr><td width="250" style="border-bottom: 1px solid #990033"> </td></tr></table>
</td>
</tr>
<tr>
<td colspan="2" bgcolor="#FFFFFF"><b>Anna:</b> <i><%=Replace(RecSet("svar"), vbCrLf, "<br>")%></i></td>
</tr>
<%End If%>
</table>
<br>
<%X = X+ 1
Recset.MoveNext
Loop
If Sidor > 1 Then%>
<table border="0" width="400" align="center" cellpadding="3" cellspacing="0" style="border: 1px solid #006666">
<tr>
<td valign="top" bgcolor="#D0F0D6">
<%For Sid = 1 To Sidor
If (Int(Sid)) = (Int(sida)) Then%><b><%=FixDigits(Sid,2)%></b><%Else%> <a href="<%=INC%>?next=<%=Sid%>"><%=FixDigits(Sid,2)%></a> <%End If
Next%>
</td>
</tr>
</table>
<%End If
Recset.Close
Set Recset = Nothing
End If
ElseIf Request.QueryString("do") = "add" Then
Namn = Request.Form("namn")
rubrik = Fixa(Request.Form("rubrik"))
Mail = Request.Form("mail")
Msg = Fixa(Request.Form("msg"))
Ip = Request.Servervariables("REMOTE_ADDR")
Url = Request.Form("url")
If Url <> "" Then
If Left(Url,7) = "http://" Then
Url = Url
Else
Url = "http://" & Url
End If
End If
Conn.Execute("Insert Into gastbok(namn, mail, url, msg,ip, rubrik) Values('"& namn &"','"& mail &"','"& url &"','"& msg &"','"& Ip &"','"& rubrik &"')")
Response.Redirect INC
End If
Conn.Close
Set Conn=Nothing%>
</table>
</div>
Då borde man ju kunna justera det antingen strax före eller efter den va? Byta ut smiley-koderna mot sina smiley-bilder istället... hur man sedan gör det rent praktiskt vet jag inte, men det kan ju gå om du kanske byter ut hela Link-grejjern där mot Vides kod på följande vis:
Jag vet inte riktigt vad Link-prylen gör, du får checka nån ASP-referens på nätet. Men jag tänkte som så att om Link skriver texten genom att länka in den bara, så skulle man kunna ersätta den med response.write tänkte jag, men ok då... kanske inte gick å bara plocka bort den
Förtydliga! Vad är det som inte fungerar? Får du felmeddelanden?
Varför ska man ta bort <%=Link(RecSet("msg"))%> menar du? Behövs inte det där?
Det den raden är att den skriver ut innehållet i "msg" från ditt recordset (dvs datan från din databas). Innan innehållet skrivs ut så skickas texten genom funktionen Link (som antagligen gör länkar i texten klickbara??)?.
För att du ska få att bli till en bild istället så måste du skicka texten genom ytterligare en funktion (som då ersätter med en <img>-tagg och således visar din smiley-bild). Dannys kod bör fungera rätt hyfsat, det han missat är att datan inte körs genom funktionen link, det gör den dock nedan: