如何根据字段选择和更新10条记录。在我的HTML页面中,我为数据库中的每一行输入了标签。当我点击提交按钮时,我只获得第一行的值到下一页。其他行的值不会被提交。
如何将10个不同记录的值传递到下一页?
<%
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE","yfr146", "kas0");
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery("SELECT *FROM (SELECT * FROM YFR146 ORDER BY CUSTOMER) t WHERE ROWNUM <=10");
int CUSTOMER,COCD,OWNCO,TOTAL_BALANCE,TOTAL,BEYOND_CREDIT,CREDIT_LIMIT=0;
float RECON_ACCT=0;
String CUSTOMER_NAME,STT,SEARCH_TRM,AGEING,REMARK,GROUP_NAME,CCA,REDEFINED_ST,INTEREST,PAYMENT_TERMS="";
if(!rs.next())
{
out.println("");
}
else
{
%>
<form action="SAVE.jsp" method="post">
<table border="5" style="border-collapse: collapse">
<tr>
<th>Customer</th> <!-- columns left out for brevity -->
<th>Total</th>
<th>Beyond Credit</th>
</tr>
<%
do
{
CUSTOMER=rs.getInt("CUSTOMER");
TOTAL=rs.getInt("TOTAL");
BEYOND_CREDIT=rs.getInt("BEYOND_CREDIT");
%>
<tr>
<td><%=CUSTOMER%></td>
<td><input type="text" name="total"/></td>
<td><input type="text" name="beyond"/></td>
</tr>
<%
}while(rs.next());
}
%>
</table>
<center> <input type="submit" value="send"></center>
</form>
答案 0 :(得分:0)
如果我理解正确你,你只会获得一行的价值。 首先,从我的观点来看,这不是建议,使用具有相同名称但具有一个按钮形式动作的不同输入字段。
如果你想这样做。
选项1
为ex创建一个计数变量生成一个唯一的名称,并连接到您的字段名称,如
<% int count=1;%> //outside the loop
<input type="text" name="name"<%=count++%>> //inside the loop
在下一页
<%
for(int i=1,i<=50;i++){
System.out.println("Name "+i+" is "+request.getParameter("name"+i));
}
%>
Opton 2
<input type="text" name="name">
在其他页面
String[] name=request.getParameterValues("name");