Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > ASP > Замена кода [:)] смайликом


Автор: Linex 23.4.2006, 08:36
Привет.
Скачал с инета гостевую книгу и модернизирую ее под себя. Решил добавить вставку смайликов, но столкнулся с такой проблемой: скрипт не заменяет код 
Код
[:)]
 соответствуюшим смайликом. 
Вот этот код я использую:
Код

strUSER_MESSAGE=Replace(strUSER_MESSAGE,"[:)]","<img src='smilies/glad.gif'>")

Но почему-то в моей гостевой он не работает. Могу показать весь код гостевой.  

Автор: ReFleX 23.4.2006, 10:39
А что выдаётся вместо смайлика?

Raplace ты верно написал, должно работать... 

Автор: Linex 23.4.2006, 11:45
А вместо смайлика выдаётся обозначение смайлика, т.е. вот это:
Код

[:)]

То есть выдаёт то, что есть  smile  

Автор: ReFleX 24.4.2006, 02:41
Код

<%
strUSER_MESSAGE = "[:)] - your smile"
strUSER_MESSAGE=Replace(strUSER_MESSAGE,"[:)]","<img src='smilies/glad.gif'>")
Response.Write(strUSER_MESSAGE)
%>


Так всё работвет smile 

Давай короче сюда весь код, повидимому, ты где то теряешь переменную strUSER_MESSAGE

Добавлено @ 02:43 
А вообще не парься ты с asp, изучай лучше сразу asp.net VB
Там все теже самые функции используются что и asp + много всяких прибамбасов 

Автор: Linex 24.4.2006, 18:20
Код

<% response.buffer=true 

Set dc = Server.CreateObject("ADODB.Connection")  
Set rs = Server.CreateObject("ADODB.Recordset")  

dc.Open "DBQ=" & Server.Mappath("database") & ";Driver={Microsoft Access Driver (*.mdb)};"

openMethod = request.form ("openMethod")  
if openMethod = "postMessage" then 

USER_DATE = FormatDateTime(NOW)
USER_NAME = request.Form ("USER_NAME")    
USER_MESSAGE = request.Form ("USER_MESSAGE")  
IP = Request.ServerVariables("remote_addr")
if (USER_NAME = "" or USER_MESSAGE = "") then
    response.write ("<center><i><font size=+2 color=red>Заполни все 

поля!</font><br></i></center>") & VBCRLF  

End IF 

if len(USER_NAME) > 55 then USER_NAME = Left(USER_NAME, 55)  End If

MYSQL = "SELECT GBOOK.* FROM GBOOK"  

if NOT (USER_NAME = "" or USER_MESSAGE = "") then

rs.Open MYSQL, dc, 1, 3

rs.AddNew  
rs.Fields("USER_DATE") = USER_DATE  
rs.Fields("USER_NAME") = USER_NAME   
rs.Fields("USER_MESSAGE") = USER_MESSAGE  
rs.Fields("IP") = IP
rs.Update
strUSER_MESSAGE = "[:)]"
strUSER_MESSAGE=Replace(strUSER_MESSAGE,"[:)]","<img src='smilies/glad.gif'>")
Response.Write(strUSER_MESSAGE)
if NOT (USER_MESSAGE = "") then
response.Cookies("server")("name") = USER_NAME
response.Cookies("server").Expires = DateAdd("m",1,Date)

End if

response.redirect ("guestbook.asp")

End if

End if

%>

<html>
<head>
<title>Гостевая книга Васи Пупкина</title>
<style>
a:link,a:visited,a:active{color:#ff4407}
body{background-color:#f4f4f4;font-family:tahoma;font-size:12px}
td{font-family:tahoma;font-size:12px}
input{background:#dadada;font-family:tahoma;font-size:11px;font-weight:bold;border:1px 

solid #999999;height:19px;width:100%}
textarea{background:#dadada;font-family:tahoma;font-size:11px;font-weight:bold;border:1px 

solid #999999;width:100%}
img{border:0px}
.button{width:19%}
</style>
<script language=JavaScript>
function insertsmily(smilyface){
document.write.USER_MESSAGE.value+=smilyface;
}
</script>
</head>
<body background=1.gif>
<center>
<h1><font color=#999999>Гостевая книга Васи Пупкина</font></h1>
</center>
<table width=60% align=center bgcolor=#ffffff cellspacing=10>
<tr>
<td>
<table width=100% bgcolor=#f4f4f4 cellspacing=10>
<tr>
<td>
<a href=Javascript:insertsmily('[:)]')><img src=smilies/glad.gif></a>
<a href=Javascript:insertsmily('[:O]')><img src=smilies/oops.gif></a>
<a href=Javascript:insertsmily('[:(]')><img src=smilies/ledsen.gif></a>
<a href=Javascript:insertsmily('[:V]')><img src=smilies/arg.gif></a>
<a href=Javascript:insertsmily('[;)]')><img src=smilies/ironi.gif></a>
<a href=Javascript:insertsmily('[:V:]')><img src=smilies/sur.gif></a>
<a href=Javascript:insertsmily('[:D]')><img src=smilies/skratt.gif></a>
<a href=Javascript:insertsmily('[8D]')><img src=smilies/cool.gif></a>
<br><br>

<form name=write action=guestbook.asp method=post>
<input type=hidden name=openMethod value=postMessage>  
Имя:<br><input type=text name=USER_NAME 

value="<%=request.Cookies("server")("name")%>"><br><br>
    Сообщение:<br><textarea rows=4 name=USER_MESSAGE></textarea><br><br>
<table width=100%>
<tr>
<td align=right>
<input class=button type=submit value=Отправить!> 
</td>
</tr>
</table>

</form>  

<%

MYSQL = "SELECT ID, USER_DATE, USER_NAME, USER_MESSAGE FROM GBOOK ORDER by ID DESC"  

rs.Open MySQL, dc, 3, 1

currentPage = request.queryString ("id")
If currentPage = "" then
    currentPage = "1"  
End If  

pageSize = 50

Records = rs.RecordCount

if NOT (Records = 0) then   
    rs.pageSize = pageSize 
    rs.AbsolutePage = currentPage 
End If
pageNext = currentPage + 1
pagePrev = currentPage - 1
Pages = Records \ pageSize  
if Records mod pageSize then 
Pages = Pages + 1

End If
%>
Страницы:&nbsp;<% if NOT pagePrev < 1 then
else
End If
While NOT pageNumber = Pages pageNumber = pageNumber + 1
if CInt (pageNumber) = CInt (currentPage)  then%><%= pageNumber %> |  <% else %>   <a 

href=guestbook.asp?id=<% = pageNumber%>> <% = pageNumber%> </a> |  <%End If
Wend
if NOT pages < pageNext then
else
End If%> 
Всего записей: <% = Records%>  
<br><br>
<%

if NOT (CInt(Records) = 0) then 
Do While (Not rs.EOF) and (currentRecords < pageSize)
currentRecords = currentRecords + 1

%>

<table width=100% style="border-top:1px solid #999999">
<tr>
<td><br>
<b><%= rs("USER_NAME")%></b> 
</td>
<td align=right><br>
<b><%= rs("USER_DATE")%></b>
</td>
</tr>
</table><br>
<table cellpadding=0 cellspacing=0 width=100%>
<tr>
<td align=justify>
<%= rs("USER_MESSAGE") %>
</td>
</tr>
</table><br>
<%

    rs.MoveNext  
    Loop  

else   
    response.write ("<P align=center><font size=+1>Нет записей. Будь 

первым!</font></center><br>") & VBCRLF  
End If

rs.Close
Set rs = Nothing
dc.Close
Set dc = Nothing
%>  
</td>
</tr>
</table>
</td>
</tr>
</table>
 

Автор: ReFleX 25.4.2006, 10:58
Код

USER_MESSAGE  = Replace(USER_MESSAGE, "[:)]", "<img src='smilies/glad.gif'>")
rs.AddNew  
rs.Fields("USER_DATE") = USER_DATE  
rs.Fields("USER_NAME") = USER_NAME   
rs.Fields("USER_MESSAGE") = USER_MESSAGE  
rs.Fields("IP") = IP
rs.Update
 

Автор: Linex 25.4.2006, 17:49
Спасибо большое! 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)