新手问jsp如何处理表单数组

justsosos 2007-09-07 10:59:52
比如表单里有以下内容:
<input type="checkbox" name="article_id[]" id="article_id">
<input type="checkbox" name="article_id[]" id="article_id">
<input type="checkbox" name="article_id[]" id="article_id">

处理页面如何处理它并把它转换成用“,”分割的字符串?

比如php是这样的
$article=$_POST['article_id'];
foreach($article as $id){
$str.=$id.",";
}
$str=substr($str,0,-1);
$sql="update .........where id in(".$str.")";
........
...全文
235 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
director1982 2008-12-25
  • 打赏
  • 举报
回复
justsosos 2007-09-09
  • 打赏
  • 举报
回复
结贴,没看仔细,form里边还是用的article_id[],原来jsp与php最大的不同就是<input type="checkbox" name="article_id">与
<input type="checkbox" name="article_id[]" id="article_id">
free_zk 2007-09-08
  • 打赏
  • 举报
回复
楼上正解。
<input type="checkbox" name="article_id[]" id="article_id">
“article_id[]”为什么会有“【】”表示数组吗??
justsosos 2007-09-08
  • 打赏
  • 举报
回复
出现这个错误,是什么原因?其他jsp页面都运行好好的
description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


root cause

java.lang.NullPointerException
org.apache.jsp.admin.unit.list_005fupdate_jsp._jspService(list_005fupdate_jsp.java:85)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

awusoft 2007-09-08
  • 打赏
  • 举报
回复
String[] params = request.getParameterValues("article_id");
StringBuffer str = new StringBuffer();

for(int i=0;i<params .length;i++){

if(i>0)

str.append(",");

str.append(params [i]);
}

String sql = "update .........where id in ("+str.toString()+")";
justsosos 2007-09-07
  • 打赏
  • 举报
回复
我一看就知道原理正确正是我想要的。不过测试发现出错,不知道是什么原因?本人刚学java,还是停留在php的函数编程思路上。这段代码是不是不能直接放入jsp页面?报错如下:
An error occurred at line: 4 in the jsp file: /admin/unit/list_update.jsp
Generated servlet error:
C:\Tomcat5\work\Catalina\localhost\long\org\apache\jsp\admin\unit\list_005fupdate_jsp.java:84: illegal start of expression
private String splitID(String id[]){
^
swoky 2007-09-07
  • 打赏
  • 举报
回复
<input type="checkbox" name="article_id">
<input type="checkbox" name="article_id">
<input type="checkbox" name="article_id">

jsp:

String[] params = request.getParameterValues("article_id");

String sql = "update .........where id in ("+splitID(params)+")";

public String splitID(String id[]){

StringBuffer str = new StringBuffer();

for(int i=0;i<id.length;i++){

if(i>0)

str.append(",");

str.append(id[i]);
}

return str.toString();

}

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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