t1441332354 2018-06-29 13:36 采纳率: 71.8%
浏览 860
已采纳

关于ajax后台传值的一些问题

这是前端用ajax向后台传值的部分代码

 <script type="text/javascript">
    function checkselect(){
        $.ajax({
        async:false,
        cache:false,
        type:'post',
        url:'ChangeServlet',
        data:{username:Username,password:Password,changepass:ChangePass},
        success:function(data){
            if(data == 1){
                alert("密码修改成功!");
            }else if(data == 0){
                alert("账号与原密码不匹配,请重新输入!");
            }
        },
            error : function() {
                alert("网络故障!");
            }   
        });
    }
</script>

后台实现功能代码如下

            String sql = "select * from LoginUser where UserName = '"+username+"' and LoginPwd = '"+pasword+"'";
            PreparedStatement ps = conn.prepareStatement(sql);
            ResultSet rs = ps.executeQuery();
            if(rs.next()){
                String isExit = "update LoginUser set LoginPwd = ? where UserName = '"+username+"'";
                PreparedStatement ps2 = conn.prepareStatement(isExit);
                ps2.setString(1,changepass);
                ps2.executeUpdate();
                ps2.close();
                conn.close();

            }else{

            }
            rs.close();
            ps.close();
            conn.close();

后台是servlet,在“conn.close()”之后判定data=1,在else里面判定data=0,并将它们的值传回前台应该怎么写?

  • 写回答

3条回答 默认 最新

  • 疾风雷颖 2018-06-30 00:43
    关注

    我认为可以做以下调整:

    PrintWriter out = response.getWriter();

                        String sql = "select * from LoginUser where UserName = '"+username+"' and LoginPwd = '"+pasword+"'";
            PreparedStatement ps = conn.prepareStatement(sql);
            ResultSet rs = ps.executeQuery();
            if(rs.next()){
                String isExit = "update LoginUser set LoginPwd = ? where UserName = '"+username+"'";
                PreparedStatement ps2 = conn.prepareStatement(isExit);
                ps2.setString(1,changepass);
                ps2.executeUpdate();
                ps2.close();
                conn.close();
    

    out.println(“1”);

            }else{
    

    out.println(“0”);

            }
            rs.close();
            ps.close();
            conn.close();
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵