<c:forEach var="UserBean" items="${requestScope.alluser}">       
           <tr>
            <td>${UserBean.id}</td>
            <c:if test="${sessionScope.type=='经理'}">
            <td><a href="UpdateUser?id=${UserBean.id}" target="right">${UserBean.username}</a></td>
            </c:if>
            <c:if test="${sessionScope.type=='普通用户'}">
            <td>${UserBean.username}</td>
            </c:if>
            <td>${UserBean.sex}</td>
            <td>${UserBean.age}</td>
            <td>${UserBean.phone}</td>
            <td>${UserBean.address}</td>
            <td>${UserBean.type}</td>
            <c:if test="${sessionScope.type=='经理'}">
            <td><a href="DeleteUser?userid=${UserBean.id}" onClick="return isdelete();">删除</a></td>
            </c:if>
           </tr>          
          </c:forEach>  我想要实现的效果是:经理可以修改所有的用户信息,而普通用户只能修改自己的信息,我现在的做法是经理可以修改所有人的信息,但是普通用户谁的信息也无法修改,因为是用<c:foreach>循环出来的,我该怎么给登陆进去的用户单独的显示只能修改自己信息的链接呢?不循环不能输出所有的信息,可是一循环所有的用户都有了链接可以修改信息,高手帮帮忙啊,给我个思路啊。

解决方案 »

  1.   

      <c:if test="${sessionScope.type=='普通用户'}">
           <c:if test="${sessionScope.username==UserBean.username}">
               <td><a href="UpdateUser?id=${UserBean.id}" target="right">${UserBean.username}</a></td>
           </c:if>
           <c:if test="${sessionScope.username!=UserBean.username}">
                <td>${UserBean.username}</td>
           </c:if>
      </c:if>
    红色字体部分调用整个系统的session
      

  2.   

    就算你页面加了判断。但也不能保证别人在URL栏上直接发请求