不是这样的,以前我看过别人做过,如果改动URL参数,页面会跳到指定页面,或者就是这个页面,
如果按楼上所说的允许ID为空,那么还怎么能出现相关页面呢???

解决方案 »

  1.   

    STRUTS?
    可以在FORM里写验证方法.
      

  2.   

    member.do?method=modifyInput&id=2你指定是跳到member.do这个action里去了,不管你?后怎么写,程序都直接跳到member.action,至于跳到什么页面去就完全和你传递过去的参数没关系了,主要看你的struts.xml里的配置
      

  3.   

    跳过去是正常的,,你传ID过去无非是想根据ID把信息查询出来并显示到修改页面,这样id=空的话,只是你修改页面不会显示ID的对应对象信息,
      

  4.   

    补充,,如果ID为空时你不想让他跳到修改页面的话,你可以在action里进行判断,如果为空你返回一个forword,同理,不为空你就让他继续执行下面的方法,并返回另外的forword
      

  5.   

    在action中没有做错误判断或者是为空判断,这个应该是首先要做的。你的这个id应该是主键,数据库在你查询数据的时候如果传递的id为空,肯定是抛出异常的,但是你没有在抛出后的action中处理该异常。还有你虽然仍然可以找到修改的页面,但是是没有数据的,是不是?
      

  6.   

    我也一直在研究这个问题,就是屏蔽地址栏参数的输入,这个也是注入式攻击的一个入口.
    如果要判断的话,那每个action不是都要判断吗?
    肯定有一个很简单的方法,让地址栏更改的参数直接提交是无效的,一直在寻找,希望有心的人继续跟上.