Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql JSP使用当前用户的数据_Mysql_Database_Jsp_Session_Web - Fatal编程技术网

Mysql JSP使用当前用户的数据

Mysql JSP使用当前用户的数据,mysql,database,jsp,session,web,Mysql,Database,Jsp,Session,Web,因此,我试图让另一个JSP获取刚刚登录的用户的信息(例如,只显示刚刚登录的特定用户的信息,而不是显示数据库中的所有内容,这与从username=current user的用户中选择*的含义相同)。无论如何,下面是我的代码,非常感谢 <% String userId = request.getParameter("user_id"); String pwd = request.getParameter("password"); %> <jsp:useBean

因此,我试图让另一个JSP获取刚刚登录的用户的信息(例如,只显示刚刚登录的特定用户的信息,而不是显示数据库中的所有内容,这与从username=current user的用户中选择*的含义相同)。无论如何,下面是我的代码,非常感谢

<%  
    String userId = request.getParameter("user_id");
    String pwd = request.getParameter("password");
%>
<jsp:useBean id="db" class="ecom.DBConnection" scope="session" />
<jsp:useBean id="user" class="ecom.UserInfo" scope="session" />
<%
Connection conn = db.getConnection(); 

PreparedStatement pstmt = conn.prepareStatement(
    "select * from USERS where user_id=? and password=?");

pstmt.setString(1, userId);
pstmt.setString(2, pwd);    

ResultSet rs = pstmt.executeQuery();    


/* Comment  
    Set the user bean properties if login is successful */
if (rs.next()) {
    user.setLoggedIn(true);
    user.setUserId(rs.getString("user_id"));

} else {
    user.setLoggedIn(false);
}   

rs.close();
pstmt.close();


/* Comment 
    Forward the request to "home.jsp" if login is successful,
    otherwise forward to "error.jsp". */
String forwardURL = null;   
if (user.isLoggedIn()) {
    forwardURL = "home.jsp";
} else {
    forwardURL = "error.jsp";
} 
%>

<jsp:forward page="<%= forwardURL %>" />

这是我正在处理的页面(Setting.jsp)


乔纳森的拍卖网站
乔纳森的拍卖网站
| 
| 
| 
| 
| 
| 
| 
|
从用户中选择*

${USERS.user\u id}


(现在它显示数据库中的所有用户名,但我只想要与登录的用户名相同的用户名)

看起来您需要在此处修改Setting.jsp:

<sql:query dataSource='${030}' var='USERS'>
SELECT * FROM USERS
</sql:query>

有问题吗?问题是什么?基本上,我可以使用上面的代码允许在数据库中注册的用户登录到我的网页,而我的其他jsp页面可以在用户注销之前维护登录信息。但是,对于另一个仅显示当前用户信息的页面,如何检索当前用户名以比较和过滤其他信息?
<sql:query dataSource='${030}' var='USERS'>
SELECT * FROM USERS
</sql:query>
PreparedStatement pstmt = conn.prepareStatement(
    "select * from USERS where user_id=?");

pstmt.setString(1, userId);