我要疯了,为什么以前可以的现在不行了!!!!insert 数据无效!!!

gelei 2004-10-17 04:38:46
我要疯了,为什么以前可以的现在不行了!!!!insert 数据无效!!!
因为我在改版起初只是回复帖子不可以,不知道哪里出了毛病现在连发新帖,留言板,货源车源信息统统不可以,但是网上的程序却可以;我把代码从网上下下来不行;我以为是系统的问题重装SQL2000不行,重装WIN2000PRO也不行。
老大们是不是我的不支持INSERT 语句呀?!!!
这是我的站上的处理发新贴的代码,网上可以执行,但是本地机测试写不进数据库,也没有报错!!
改成ADDNEW UPDATE 我试了,也不行。
希望老大们谁知道帮帮忙!!
<!--#include file="../Conn.asp"-->
<%
if Session("LoginSuccess")="" then
response.redirect "../Default.asp"
end if
bbs_typeid=request("bbs_typeid")
bbs_username=session("user")
bbs_pwd=session("bbsuser_pwd")

bbs_title=replace(trim(server.HTMLEncode (Request.Form("bbs_title"))),"'","''")

if bbs_title="" then
Response.Redirect "bbs_say.asp"
end if

bbs_content=replace(trim(server.HTMLEncode (Request.Form("bbs_content"))),"'","''")

'Response.Write bbs_title
'Response.Write bbs_content
'Response.End
Function strlen(str)
Dim i, j, t, c
j = Len(str)
t = j
For i = 1 To j
c = Asc(Mid(str, i, j))
If c < 0 Then c = c + 65536
If c > 255 Then
t = t + 1
End If
Next
strlen = t
End Function
bbs_byte=strlen(bbs_content)
if bbs_byte>1000 then
bbs_byte=bbs_byte/1000 & "k"
elseif bbs_byte>1000000 then
bbs_byte=bbs_byte/1000000 & "m"
end if
bbs_ip=Request.ServerVariables ("remote_addr")

'dsn="Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=jy;Data Source=."
'dsn="Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=mybole;Data Source=."
set rs=server.CreateObject ("adodb.recordset")
'set conn=server.CreateObject("adodb.connection")
'conn.Open dsn
sql="select max(bbs_bbsid) as maxbbsid from bbs where len(bbs_bbsid)=3"
rs.Open sql,conn,1
if isnull(rs("maxbbsid")) then
maxbbsid="001"
else
maxbbsid=rs("maxbbsid")+1
maxbbsid=right("00" & maxbbsid,3 )
end if

sql="insert into bbs(bbs_bbsid,bbs_username,bbs_title,bbs_content,bbs_ip,bbs_byte,bbs_typeid) values('"& maxbbsid &"','"& bbs_username &"','"& bbs_title &"','"& bbs_content &"','"& bbs_ip &"','" & bbs_byte & "','"& bbs_typeid &"')"


conn.Execute sql
rs.Close
set rs=nothing
conn.Close
set conn=nothing

Response.Redirect "bbs_say_ok.htm"
%>

我回复帖子的代码,网上不执行,本地也不执行
<!--#include file="../Conn.asp"-->
<body bgcolor=#F9FEE0>
<%

if Session("LoginSuccess")="" then
response.redirect "../Default.asp"
end if
bbs_typeid=request("bbs_typeid")
bbs_bbsid=request("bbs_bbsid")
lenbbsid=len(bbs_bbsid)+3
bbs_username=session("user")
bbs_pwd=session("bbsuser_pwd")

bbs_title=replace(trim(server.HTMLEncode (Request.Form("bbs_title"))),"'","''")


bbs_content=replace(trim(server.HTMLEncode (Request.Form("bbs_content"))),"'","''")


if bbs_title="" then
Response.Write "请输入主题,<A href='VBScript: window.history.go(-1)'>返回</a>"
Response.End
'Response.Redirect "bbs_show.asp?bbs_bbsid=" & bbs_bbsid & "&bbs_typeid=" & bbs_typeid
end if

Function strlen(str)
Dim i, j, t, c
j = Len(str)
t = j
For i = 1 To j
c = Asc(Mid(str, i, j))
If c < 0 Then c = c + 65536
If c > 255 Then
t = t + 1
End If
Next
strlen = t
End Function
bbs_byte=strlen(bbs_content)
if bbs_byte>1000 then
bbs_byte=bbs_byte/1000 & "k"
elseif bbs_byte>1000000 then
bbs_byte=bbs_byte/1000000 & "m"
end if
bbs_ip=Request.ServerVariables ("remote_addr")

'dsn="Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=jy;Data Source=."
'dsn="Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=mybole;Data Source=."
set rs=server.CreateObject ("adodb.recordset")
'set conn=server.CreateObject("adodb.connection")
'conn.Open conn
sql="select max(bbs_bbsid) as maxbbsid from bbs where len(bbs_bbsid)='"& lenbbsid &"' and bbs_bbsid like '"& bbs_bbsid &"%'"
rs.Open sql,conn,1
if isnull(rs("maxbbsid")) then
maxbbsid=bbs_bbsid & "001"
else
maxbbsid=rs("maxbbsid")+1
maxbbsid=bbs_bbsid & right(maxbbsid,3 )
end if

sql="insert into bbs(bbs_bbsid,bbs_username,bbs_title,bbs_content,bbs_ip,bbs_byte,bbs_typeid) values('"& maxbbsid &"','"& bbs_username &"','"& bbs_title &"','"& bbs_content &"','"& bbs_ip &"','" & bbs_byte & "',"& bbs_typeid &")"

conn.Execute sql
rs.Close
set rs=nothing
conn.Close
set conn=nothing
Response.Redirect "bbs_say_ok.htm"
%>
...全文
212 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
somecom 2004-10-17
  • 打赏
  • 举报
回复
用这种方式写数据库很容易出错,可阅读性差,排错也难。试试俺的吧:

Set cmdTemp = Server.CreateObject("ADODB.Command")
Set InsertCursor = Server.CreateObject("ADODB.Recordset")
cmdTemp.CommandText = "select max(bbs_bbsid) as maxbbsid from bbs where len(bbs_bbsid)='"& lenbbsid &"' and bbs_bbsid like '"& bbs_bbsid &"%'"
cmdTemp.CommandType = 1
Set cmdTemp.ActiveConnection = conn
InsertCursor.Open cmdTemp, , 1, 3
InsertCursor.addnew
InsertCursor("bbs_bbsid") =Request("**")
InsertCursor("**") =Request("**")
...............
InsertCursor.Update
InsertCursor.close
conn.close
set InsertCursor=nothing
set conn=nothing
DeltaCat 2004-10-17
  • 打赏
  • 举报
回复
'dsn="Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=jy;Data Source=."
'dsn="Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=mybole;Data Source=."
'set conn=server.CreateObject("adodb.connection")
'conn.Open dsn


你上面的都注释掉了, 它怎么能执行呢?
hqcsx 2004-10-17
  • 打赏
  • 举报
回复
你看看是不是数据库的问题,会不会是字段的长度太小了,这样也会存不进数据库.我也遇到过类似的问题
mouse_2004 2004-10-17
  • 打赏
  • 举报
回复
提示啥错误?
777dragon 2004-10-17
  • 打赏
  • 举报
回复
网上可以执行,但是本地机测试写不进数据库???

不是程序原因8

帮up了 : )
swlswl27 2004-10-17
  • 打赏
  • 举报
回复
不太清楚,帮你顶吧!

28,390

社区成员

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

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