jsp页面传值到数据库的问题

做了一个简单的jsp页面向数据库传递数据的系统addvip.html代码:<html><head><title>增加VIP顾客</title></head><body><... 做了一个简单的jsp页面向数据库传递数据的系统
addvip.html代码:
<html>
<head>
<title>增加VIP顾客</title>
</head>
<body>
<center>
<h1><font face="新宋体">增加VIP客户</font></h1>
<table>
<tr><td>VIP号码:</td><td><input type="text" name="textfield1"></td></tr>
<tr><td>VIP名字:</td><td><input type="text" name="textfield2"></td></tr>
<tr><td>VIP折扣:</td><td><input type="text" name="textfield3"></td></tr>
<tr><form action="addvip2.jsp"><td align=right><input type="submit" name="Submit" value="提交"></td></form>
<form action=""><td align=right><input type="reset" name="Reset" value="重置"></td></form></tr>
</table>
</center>
</body>
</html>

addvip2.jsp代码:
<%@page contentType="text/html;charset=gb2312"language="java"import="java.sql.*"errorPage=""%>
<html>
<body>
<%
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=E:\\TestDB.mdb";
Connection con=DriverManager.getConnection(url);

String textfielda="";
String textfieldb="";
String textfieldc="";
textfielda=request.getParameter("textfield1");
textfieldb=request.getParameter("textfield2");
textfieldc=request.getParameter("textfield3");
String sql="insert into viplist values(?,?,?)";
PreparedStatement ps=con.prepareStatement(sql);
ps.setString(1,textfielda);
ps.setString(2,textfieldb);
ps.setString(3,textfieldc);
ps.executeUpdate();
con.close();
%>
</body>
</html>

可以运行成功,但是看数据库会发现插入的值全部是NULL,而不是自己输入的三个值,请问问题出在哪里?新手,谢谢
展开
 我来答
森成鞠雨
2019-11-15 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.2万
采纳率:34%
帮助的人:1057万
展开全部
sql语句可以直接删除,或者integer.parseint(request.getprequest.getparameter("id"))转成数字类型
Leoshineboy
2010-12-11 · TA获得超过570个赞
知道小有建树答主
回答量:367
采纳率:0%
帮助的人:290万
展开全部
你所说的运行成功根本就不是成功,只是没报错误而已。
你第一个页面都没有把那三个 VIP号码:VIP名字:VIP折扣:写在form里,表单提交后只有包含在<form></form>里的才能通过request.getParameter()获得值。
而且form里的action的值也不能为空啊,应该是你提交数据的地址,就是action="addvip2.jsp"
action为空,提交地址都没有,当然不会报什么错误了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
不知舞者Lily
2010-12-11 · TA获得超过518个赞
知道小有建树答主
回答量:318
采纳率:0%
帮助的人:155万
展开全部
在addvip.html里修改form,改为<form action="addvip2.jsp">并且,form要包含要提交的项目。
第二种方法是可以用script,用function定义一个函数test(){form的名字.action="addvip2.jsp"}
然后在你的那个submit那里可以不用定义为submit,可以定义为button,然后点击button跳到test()里面。不懂再问我。我给你项目看。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2010-12-11 · TA获得超过493个赞
知道答主
回答量:136
采纳率:0%
帮助的人:78万
展开全部
<table>
<tr><td>VIP号码:</td><td><input type="text" name="textfield1"></td></tr>
<tr><td>VIP名字:</td><td><input type="text" name="textfield2"></td></tr>
<tr><td>VIP折扣:</td><td><input type="text" name="textfield3"></td></tr>
<tr><form action="addvip2.jsp"><td align=right><input type="submit" name="Submit" value="提交"></td></form>
<form action=""><td align=right><input type="reset" name="Reset" value="重置"></td></form></tr>
</table>
改成如下:
<table>
<form action="addvip2.jsp">
<tr><td>VIP号码:</td><td><input type="text" name="textfield1"></td></tr>
<tr><td>VIP名字:</td><td><input type="text" name="textfield2"></td></tr>
<tr><td>VIP折扣:</td><td><input type="text" name="textfield3"></td></tr>
<tr><td align=right><input type="submit" name="Submit" value="提交"></td>
<td align=right><input type="reset" name="Reset" value="重置"></td></tr>
</form>
</table>
填写数据的控件一定要放在<form></form>中间,这样提交表单的时候,才能把数据提交上去

参考资料: sername

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式