ASP页面无法提交大文本到数据库

sspanzervor1 2018-09-05 10:25:28
最近发现维护的一个论坛出现了问题,就是在页面上,提交超过约8000个字符的文本时,无法写入到SQL Server数据库中;表现为直接返回到forumedit.asp页面,也就是说根本没有进入到IF条件里面。

但很奇怪的是,在之前提交数据时,是正常的,没有出现这个问题, c_message_content 字段为varchar(MAX)类型,用Post方法,提交这么点数据也不应该超出限制,在这里请各位前辈高手指教,小弟不胜感激!

部分代码如下:
以下是提交数据的ASP代码,
forumedit.asp

<!--#include file="conn_nofilter.asp"-->
set rs=server.CreateObject("adodb.recordset")
sql="select * from t_message where c_message_no="&request("c_message_no")&" and c_board_ID="&request("c_board_ID")&""
rs.open sql,db,3,3
if request("submit")="提交" then
rs("c_message_title")=request("c_message_title")
rs("c_message_content")=request("c_message_content")
rs("c_message_lastredate")=Now()
rs("c_message_restoreUserNo")=request.Cookies("UserID")
if request("Ubbflag")=1 then
rs("c_message_UBBflag")=1
else
rs("c_message_UBBflag")=0
end if

if request("PRflag")=1 then
rs("c_message_PRflag")=1
else
rs("c_message_PRflag")=0
end if

rs.Update
response.Redirect "forumview.asp?PageNo_Url1="&request("PageNo_Url1")&"&c_message_no="&request("c_message_no")&"&c_board_ID="&request("c_board_ID")&""
end if


以下是通过HTML页面,post方法将用户输入的textarea文本内容提交上去

<form name="form1" method="post" action="">
<td><textarea name='c_message_content' cols='100' rows='23' id='c_message_content'><%=rs("c_message_content")%></textarea></td>
<input type="submit" name="Submit" value="提交">
</form>
...全文
531 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
hookee 2018-09-05
  • 打赏
  • 举报
回复
1 调试的时候把On Error Resume Next注释掉,看具体报什么错 2 超过8000字符,可以用 上传文件的方式递交表单(form enctype="multipart/form-data),asp里可以用第三方上传组件去读取各个字段。 3 尽量不要拼接sql语句,防止sql注入。 从表单获取的数据不要直接使用,先检查下类型和范围。

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧