我的发新帖子文件为new.htm.
文件postnew.asp是负责读取用户提交的帖子信息,并将读取的帖子信息写入数据表forum进行保存.
我的设计思路是这样的:把表userinf(保存用户注册信息)中picture里的图片二进制地址,添加到表forum中的picture里.
new.htm:
<html>
<head>
<title>发新帖子</title>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
</head>
<body topmargin="0">
<table cellspacing=0 cellpadding=0 width="100%" align=center border=0>
<tr>
<td bgcolor=#000000>
<table cellspacing=1 cellpadding=4 width="100%" border=0>
<tr class=header><td colspan=2 align=center>发新帖子</td></tr>
<form action="postnew.asp" method=post name=newform>
<tr>
<td width="21%" bgcolor=#f8f8f8>标题:</td>
<td bgcolor=#ffffff><input tabindex=1 maxlength=40 size=54 name=title></td>
</tr>
<tr>
<td bgcolor=#f8f8f8>内容:</td>
<td bgcolor=#ffffff><textarea cols=92 rows=10 name=content></textarea></td>
</tr>
<tr>
<td bgcolor=#f8f8f8 colspan=2 align=center>
<input type=button class="buttonface" value="发表" onclick="newformcheck()">
<input type=reset class="buttonface" value="重填">
</td>
</tr>
</form>
</table>
</td>
</tr>
</table>
</body>
</html>
postnew.asp:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>新建网页 1</title>
</head>
<body>
<!--#include file="opendb.asp"-->
<%
'读取用户提交的帖子内容
title=trim(request.Form("title"))
content=trim(request.Form("content"))
'读取("UserName")变量的值,即登录用户的用户名
username=session("UserName")
'调用date()和time()函数来获取用户发帖子的时间
creattime=date()+time()
'根据用户名在数据表UserInf中查找符合条件的记录
strSQL = "Select * from UserInf Where UserName="&"'"&username&"'"
'设置指针类型为“静态指针”,静态指针常用于寻找和建立记录
rst.CursorType = 1
'设置记录集的锁定方式
rst.LockType = 3
'打开记录集
rst.open strSQL
pic=rst("picture")
'使用INSERT INTO语句在数据表Forum中插入一条记录
Sqlstr = "INSERT INTO Forum (Title,Content,CreateTime,Username,picture) Values ('"
Sqlstr= Sqlstr & title & "', '"
Sqlstr= Sqlstr & content & "', '"
Sqlstr= Sqlstr & creattime & "', '"
Sqlstr= Sqlstr & username & "', '"
Sqlstr = Sqlstr & pic & "' ) "
'调用Connection对象的Execute方法来执行INSERT INTO语句
my_conn.Execute (Sqlstr)
%>
<script language=vbscript>
msgbox "你的帖子已发表",48,"发表成功"
window.location="index.asp"
</script>
<!--#include file="closedb.asp"-->
</body>
</html>
执行上述文件后,出现如下错误:
上面红色的部分类型不匹配.
我已经把表forum中的picture项设置为OLE对象.难道是二进制地址不能用简单地来传递吗?
[此贴子已经被作者于2006-5-21 16:44:46编辑过]