拜托,请帮助看看这个代码,可以发布成功,但是在浏览全文的时候,没有空格,没有回车换行,请问如果何改进.(在线等侍)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>
<body>
<center>
<%
dim title,fbr,text,Fbdate,SQL,Disname,Tblname
if request.form("title")="" or request.form("fbr")="" or request.form("text")="" then
response.write"<center>您没有输入完全</center>"
else
title=request.form("title")
fbr=request.form("fbr")
text=request.form("text")
DisName="新闻"
TblName="新闻"
end if
conn = "DBQ=" + "c:\Inetpub\wwwroot\update\PageUpdata.mdb" + ";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
SQL= "INSERT INTO xxtbl(title,text1,fbr,DisName,TblName) VALUES ('"& title &"','"& text &"','"& fbr &"','"& DisName &"','"& TblName &"')"
set rs=server.createobject("adodb.recordset")
rs.open SQL,conn,1,1
if err.number>0 then
response.write "新闻发布失败"
else
response.write"新闻发布成功"
response.write"<a href='INDEX.asp'>返回首页</a>"
response.write"<a href='jwxwfb.htm'>继续发布</a>"
end if
%>
</center>
</body>
</html>
可以发布成功,但是在浏览全文的时候,没有空格,没有回车换行,请问如果何改进.
问题点数:0、回复次数:5Top
1 楼earthpea(问莲根,有丝多少?莲心知为谁苦?)回复于 2003-02-01 11:02:38 得分 0
呵呵,在数据库里保存的,你查看的时候,要加工一下才行的
<%
sql = "select * from xxtb1 where title = '今天的第一个新闻'"
执行sql
newstext = rs("test1")
newstext = HTMLEncode(newstext)
response.write newstext
'下面是函数
function HTMLEncode(fString)
if not isnull(fString) then
fString = replace(fString, ">", ">")
fString = replace(fString, "<", "<")
fString = Replace(fString, CHR(32), "<I></I> ")
fString = Replace(fString, CHR(9), " ")
fString = Replace(fString, CHR(34), """)
fString = Replace(fString, CHR(39), "'")
fString = Replace(fString, CHR(13), "")
fString = Replace(fString, CHR(10) & CHR(10), "</P><P> ")
fString = Replace(fString, CHR(10), "<BR> ")
fString=ChkBadWords(fString)
HTMLEncode = fString
end if
end functionTop
2 楼earthpea(问莲根,有丝多少?莲心知为谁苦?)回复于 2003-02-01 11:06:19 得分 0
注:最后的fString=ChkBadWords(fString)一行是过滤关键字的,比如那些骂人的话,函数如下:
function ChkBadWords(fString)
dim bwords,ii,badwords
badwords = "第一个要过滤的|第二个要过滤的|其他要过滤的"
if not(isnull(BadWords) or isnull(fString)) then
bwords = split(BadWords, "|")
for ii = 0 to ubound(bwords)
fString = Replace(fString, bwords(ii), string(len(bwords(ii)),"*"))
next
ChkBadWords = fString
end if
end function
你也可以将badwords放到数据库,用来自动增加过滤
以上代码取自“动网论坛5.0final”版的ubbcode.asp文件Top
3 楼20010101cz(落难凡人)回复于 2003-02-01 12:19:20 得分 0
不行阿总是报错,请指教
<script language="VBScript">
<!--
function HTMLEncode(fString)
if not isnull(fString) then
fString = replace(fString, ">", ">")
fString = replace(fString, "<", "<")
fString = Replace(fString, CHR(32), "<I></I> ")
fString = Replace(fString, CHR(9), " ")
fString = Replace(fString, CHR(34), """)
fString = Replace(fString, CHR(39), "'")
fString = Replace(fString, CHR(13), "")
fString = Replace(fString, CHR(10) & CHR(10), "</P><P> ")
fString = Replace(fString, CHR(10), "<BR> ")
fString=ChkBadWords(fString)
HTMLEncode = fString
end if
end function
-->
</script>
<%
set cn= Server.CreateObject("ADODB.Connection")
Cn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("./update/PageUpdata.mdb")
'
dim rs,sql,n,newstext,newstext1
'set rs1 = Server.CreateObject("ADODB.Recordset")
sql="update xxtbl set Count=Count+1 where Id=" & request("Id")
cn.execute(sql)
sql = "Select * from xxtbl where Id=" & request("Id") & " order by Id desc"
'rs1.open sql, cn
set rs=cn.execute(sql)
newstext = rs("Text1")
newstext1 = HTMLEncode(newstext)
'virtual
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
</head>
<body topmargin=0 leftmargin=0>
<div align="center">
<center>
<table width="660" height="159" border="0" cellpadding="0" cellspacing="0" >
<tr>
<td width="660" height="34"><br>
<center>
<font color=blue size="3"><strong><% =rs("Title") %></strong></font>
<br>
<hr align="center">
</center></td>
</tr>
<tr>
<td height="59" align="left" ><font size="3"><% response.write newstext1 %></font></td>
</tr>
<tr>
<td width="660" height="44" align="left" >
<hr>
</td>
</tr>
</table>
</center>
</div>
<p></p>
</body>
</html>Top
4 楼20010101cz(落难凡人)回复于 2003-02-01 12:20:58 得分 0
出错提示
技术信息(适用于支持人员)
错误类型:
Microsoft VBScript 运行时错误 (0x800A000D)
/Textf.asp, 第 42 行
浏览器类型:
Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)
页:
GET /Textf.aspTop
5 楼earthpea(问莲根,有丝多少?莲心知为谁苦?)回复于 2003-02-01 12:45:01 得分 0
要么加上function ChkBadWords(fString)函数,要么去掉第17条调用这个函数的语句Top




