javascript - 从 JSP 更新 MySQl 数据库

标签 javascript java html jsp

我编写了一个表单来更新用户的登录详细信息。但更新不成功。

我是 JSP 新手,请帮助我通过单击“保存”按钮将用户数据更新到 MySQL 数据库。

我的代码如下所示;

<%
String CONN_STRING = "jdbc:mysql://localhost/pmsdb";
String USERNAME = "dbuser";
String PASSWORD = "dbpassword";

Connection conn=null;
PreparedStatement pst=null;
ResultSet rs =null;

if(request.getParameter("submit")!=null){
    String cuser=request.getParameter("currentusername"); 
    String user = request.getParameter("username");
    String pwd = request.getParameter("password");
    String cpwd = request.getParameter("confirmpasword");
    Class.forName("com.mysql.jdbc.Driver");

     conn = DriverManager.getConnection(CONN_STRING, USERNAME, PASSWORD);
     String sql = "UPDATE supplierinfo SET username='"+user+"', password='"+pwd+"' WHERE username='"+cuser+"' ";

     if(cuser!=null && user!=null && pwd!=null && cpwd!=null  ){
     pst=conn.prepareStatement(sql);
     pst.execute(); 
     }else{
     %>
     <script language="JavaScript">
         alert("Fill all fields and try again")
     </script>
     <%
     }
}
    %>
  <div class="row">
  <div class="col-md-6 col-md-offset-3 settingbox">
    <div class="panel panel-login">
      <div class="panel-heading">
        <div class="row">
          <div class="col-xs-6">
            <a href="#" class="active" id="login-form-link">Login Details</a>
          </div>
          <div class="col-xs-6">
            <a href="#" id="register-form-link">General Details</a>
          </div>
        </div>
        <hr>
      </div>
      <div class="panel-body">
        <div class="row">
          <div class="col-lg-12">
            <form id="login-form" action="" method="post" role="form" style="display: block;">
              <div class="form-group">
                <input type="text" name="currentusername" id="currentusername" tabindex="1" class="form-control" placeholder="Current Username" value="">
              </div>
              <div class="form-group">
                <input type="text" name="username" id="username" tabindex="1" class="form-control" placeholder="New Username" value="">
              </div>
              <div class="form-group">
                <input type="password" name="password" id="password" tabindex="2" class="form-control" placeholder="New Password">
              </div>
              <div class="form-group">
                <input type="password" name="confirmpassword" id="password" tabindex="2" class="form-control" placeholder="Confirm New Password">
              </div>
              <div class="form-group">
                <div class="row">
                  <div class="col-sm-6 col-sm-offset-3">
                    <input type="submit" name="submit" id="submit" tabindex="4" class="form-control btn btn-login" value="Save">
                  </div>
                </div>
              </div>

最佳答案

表单读取数据时,您使用了confirmpasword而不是confirmpassword

更改以下内容

 String cpwd = request.getParameter("confirmpasword");

String cpwd = request.getParameter("confirmpassword");

还有一件事是,当提交表单时,将为 textbox 字段发送 null

将您的 if 条件更改为以下内容,它将检查 null 以及空字符串

if((cuser!=null &&cuser.length()>0) 
 && (user!=null &&user.length()>0)  
 && (pwd!=null && pwd.length()>0)
 && cpwd!=null && cpwd.length()>0) ) {
 // statements
}

关于javascript - 从 JSP 更新 MySQl 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31984390/

相关文章:

html - Div 在移动预览中与文本重叠

javascript - tofixed() + 2 表现得像 tofixed + "2"

javascript - 需要知道屏幕上显示的是哪个div

javascript - 我的随机播放功能有哪些缺点?

java - 创建依赖于 RESTlet 的 Maven Artifact - 如何处理版本

java - 使用 Spring Security 保护方法

html - Safari 错误 - 输入 :checked with two labels controlling it

javascript - 通过 $.each 循环中的键读取 JSON 数据值

java - 展开数学表达式(展开括号)

javascript - 如何使动态创建的按钮像常规按钮一样工作