Servlet没有正确使用form和jquery / ajax

时间:2014-11-10 01:54:56

标签: jquery ajax jsp servlets

第一次发帖。在页面上工作,希望任何可以帮助。所以我正在创建一个登录主页。需要电子邮件和通行证然后使用jquery / ajax,这样页面就不会刷新,但仍会在用户登录时更改内容。

在我的servlet的代码中,我得到了一个validate方法来检查我的mysql,如果两个输入类型匹配表中的一行。否则它将打印输出失败(这与jsp页面atm上的jquery / ajax完美配合)。然而它也会失败,即使它应该是正确的。

我已经使用类似的表单方法测试了数据库并验证了函数,没有jquery的东西。并且知道它正在发挥作用。提前谢谢。

这是我到目前为止所得到的:

jquery:

<script>
    $(document).ready(function() {
        $('#submit').click(function() {
            $.get('login',function(responseText) {
                $('#gg').text(responseText);
            });
        });
    });
</script>

表格:

<form method="get">
    <input type="text" id="emaill" name="email"/>
    <input type="text" id="passs"  name="pass" />
    <input type="button" id="submit" value="login" />   
</form>

servlet:

public class Login extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {

        resp.setContentType("text/html");  
        PrintWriter out = resp.getWriter();


        String email = req.getParameter("email");
        String pass = req.getParameter("pass");
        String name = null;



        if(Validate.checkUser(email, pass)){

            try{



                Class.forName("com.mysql.jdbc.Driver");

                Connection myConn = DriverManager.getConnection(---Deleted on Purpose---);

                PreparedStatement ps = myConn.prepareStatement("select name from user where email=? and pass=?");

                ps.setString(1, email);
                ps.setString(2, pass);

                ResultSet rs = ps.executeQuery();
                while(rs.next()){
                    name = rs.getString("name");

                HttpSession session = req.getSession(); 
                session.setAttribute("name", name);     
                String ID = session.getId();    
                }

                out.println("Works");

            } catch (Exception e){
                e.printStackTrace();
            }

        }
        else{

            out.println("Fail");
            out.println("email");

        }

        }
    }

0 个答案:

没有答案