chetan
chetan

Reputation: 1

How to change password column in mysql

String user = request.getParameter("uname");
String pwd = request.getParameter("pass");
String pwd1 = request.getParameter("pass");
String pwd2 = request.getParameter("pass");

try{
    Class.forName("com.mysql.jdbc.Driver");
    String url = "jdbc:mysql://localhost:3306/logindb";
    Connection con = DriverManager.getConnection(url, "root", "root");

    String sql = "select * from register";
    PreparedStatement ps = con.prepareStatement(sql);
    ps.setString(1, pwd);
    ps.setString(2, request.getParameter("uname"));
    ResultSet rs = ps.executeQuery();
    if(rs.next())
    {
        sql = "update register set pass=? where uname=? ";
        ps = con.prepareStatement(sql);
        ps.setString(1, pwd);
        ps.setString(2, request.getParameter("uname"));
        ps.executeUpdate();
        out.println("password changed");

    }
}
catch(Exception e)
{
    out.println(e);
}

This Is my code and it will show me an error like this

java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0).**

Upvotes: 0

Views: 458

Answers (1)

001
001

Reputation: 13533

Here:

String sql = "select * from register";
PreparedStatement ps = con.prepareStatement(sql);
ps.setString(1, pwd);
ps.setString(2, request.getParameter("uname"));

You are trying to set parameters that aren't there. Looks like a copy-and-paste error. Those last 2 lines shouldn't be there.

Upvotes: 2

Related Questions