Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.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
Java 当我输入空用户名和密码时,登录页面在JSp中不起作用_Java_Jsp - Fatal编程技术网

Java 当我输入空用户名和密码时,登录页面在JSp中不起作用

Java 当我输入空用户名和密码时,登录页面在JSp中不起作用,java,jsp,Java,Jsp,这是我的登录页面代码 我正在从数据库进行验证,并检查是否存在用户。 如果用户存在,则登录成功;如果不存在,则向用户显示错误消息。 当我尝试使用空用户名和密码登录时,它也允许登录 请检查我的代码并告诉我我做错了什么。在进行验证之前,您可以检查空字符串,如: <%@ page import="java.sql.*"%> <% String userid = request.getParameter("uname"); String pwd = request.get

这是我的登录页面代码

我正在从数据库进行验证,并检查是否存在用户。 如果用户存在,则登录成功;如果不存在,则向用户显示错误消息。 当我尝试使用空用户名和密码登录时,它也允许登录


请检查我的代码并告诉我我做错了什么。

在进行验证之前,您可以检查空字符串,如:

<%@ page import="java.sql.*"%>
<%
    String userid = request.getParameter("uname");
    String pwd = request.getParameter("pass");
    Class.forName("com.mysql.jdbc.Driver");
    Connection con = DriverManager.getConnection(
            "jdbc:mysql://localhost:3306/test", "root", "");
    Statement st = con.createStatement();
    ResultSet rs;
    rs = st.executeQuery("select * from members where uname='" + userid
            + "' and pass='" + pwd + "'");
    if (rs.next()) {
        session.setAttribute("userid", userid);
        //out.println("welcome " + userid);
        //out.println("<a href='logout.jsp'>Log out</a>");
        response.sendRedirect("index.jsp");
    }

    else {
        out.println("Invalid password <a href='FirstPage.jsp'>try again</a>");
    }
%>

只是一个旁注:您知道您的脚本非常容易受到SQL注入的攻击吗?您的表中有空记录吗?我不知道,但它在所有浏览器中都能工作。会有什么错误?请给我们您的数据库用户表行。Thanx其工作正常有一条空白记录
if(userid == null || pwd == null) {
    request.sendRedirect("home.jsp"); // return; // do what ever you want to exit. }
}