简单的表单提交及和数据库连接的问题
order.htm提交至submit.asp。
order.htm中有2个文本框和1个下拉列表,提交这三个控件的内容,然后在submit页面中连接数据库,和库中的表table1中的3个字段比较。如果表中有一条记录同时满足3个字段值和提交的3个值相同,就输出“该记录已存在”,否则就存入数据库。
如何写代码,拜托了!
(我用vbs写的不行,只好求助于js了,请各位高手帮忙!!!)
问题点数:80、回复次数:5Top
1 楼realyfly(^_^)回复于 2002-05-21 08:53:14 得分 30
<form name=in method=post action=submit.asp>
<input type=text name=name1>
<input type=text name=name2>
<select name=st>
<option value=1>1
<option value=2>2
<option value=3>3
</select>
<input type=submit name=subm value=submit>
</form>
submit.asp
<%
name1=request.form("name1")
name2=request.form("name2")
st=request.form("st")
sql="select * from table1 where name1='"&name1&"' and name2='"&name2&"' and st='"st&"'"
数据库连接
执行sql得到rs记录集
if(not rs.eof)
response.write "该记录已存在"
else
插入数据库
end if
%>Top
2 楼wayyaw(章鱼)回复于 2002-05-21 09:24:02 得分 30
submit.asp
<%
String name1,name2,st,sql;
name1=(String)request.getParameter("name1");
name2=(String)request.getParameter("name2");
st=(String)request.getParameter("st");
sql="select * from table1 where name1='"+name1+"' and name2='"+name2+"' and st='"+st+"'";
//数据库连接(oracle)
Class.forName("weblogic.jdbc.pool.Driver").newInstance();
Connection conn=DriverManager.getConnection("jdbc:weblogic:pool:oraclePool", null);
Statement stmt = conn.createStatement();
//执行sql得到rs记录集
ResultSet rs = stmt.executeQuery(sql);
if(rs.next==true)
out.print( "该记录已存在");
else
//插入数据库
sql="insert into table1 (name1,name2,st) values ('"+name1+"','"+name2+"','"+st+"')";
stmt.execute(sql);
end if
//关闭结果集
rs.close();
stmt.close();
//关闭数据库
conn.close();
%>
Top
3 楼weidegong(weidegong)回复于 2002-05-21 09:36:51 得分 20
没必要这样吧?
直接将表中的三个字段做成唯一索引,让数据库进行完整性检查就可以了Top
4 楼weidegong(weidegong)回复于 2002-05-21 09:37:41 得分 0
没必要这样吧?
直接将表中的三个字段做成唯一索引,让数据库进行完整性检查就可以了Top
5 楼marf_cn(吗啡)回复于 2002-05-21 09:47:24 得分 0
wayyaw(章鱼):
如果是连接access数据库,是不是代码也可用?
这句可以吗?Statement stmt = conn.createStatement();Top
6 楼marf_cn(吗啡)回复于 2002-05-21 09:55:08 得分 0
weidegong(weidegong)兄:
请问你说的索引如何作?Top




