php は、AJax と json を使用してログイン検証を実装します: 1. jsp サンプル ファイルを作成し、jquery 依存関係ファイルと fastjson 依存関係ファイルをインポートします; 2. 新しい login.js ファイルを作成して、ユーザー名とパスワードのテキスト コンテンツを取得します。 ; 3. 、新しいコントローラー クラスを作成し、ユーザーが存在するかどうかをクエリし、オブジェクトを json 文字列型に変換して js ファイルに返します; 4. js は成功したかどうかを判断し、ページにジャンプします。
このチュートリアルのオペレーティング システム: Windows 10 システム、php8.1.3 バージョン、Dell G3 コンピューター。
AJAX と Json によるユーザー ログインの完了
1. jquery の依存関係と fastjson の依存関係を事前にインポートします
2新しい jsp ページを作成します
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <script type="text/javascript" src="js/jquery-3.4.1.js"></script> <script type="text/javascript" src="login.js"></script> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <!-- 不使用submit,用ajax+json实现局部刷新,实现登录 --> <form action="" method="post"> <span id="msg"></span><br/> 用户姓名:<input type="text" name="username" id="username"><br/> 用户密码:<input type="text" name="password" id="password"><br/> <input type="button" value="登录" id="submit"> </form> </body> </html>
3. 新しい js ファイルを作成します#
$(function(){ $("#submit").click(function(){ var username = $("#username").val(); var password = $("#password").val(); //获取json格式的文本内容 $.post("login?mark=login",{"username":username,"password":password}, function(data){ if(data.log){ /*输入要跳转的页面*/ /*window.location.href="https://www.php.cn/link/3729ff995bfa947622cdf0612e57c332";*/ alert("success"); }else{ $("#msg").css("color","red").html(data.msg); } },"json" ); }); });
4. 新しいコントローラー クラスを作成します
このユーザーが存在するかどうかを問い合わせます マップ オブジェクトを json 文字列型に変換し、メモリに書き込み、js ファイルに返します
private void login(HttpServletRequest request, HttpServletResponse response) throws Exception { // response.setContentType("text/html;charset=utf-8"); PrintWriter writer = response.getWriter(); String msg = ""; String username = request.getParameter("username"); String password = request.getParameter("password"); Map<String, Object> map = new HashMap(); //查询是否存在此用户 User user = new LoginServer().login(username, password); if(user!=null) { map.put("log", true); map.put("msg", "成功"); }else { map.put("log", false); map.put("msg", "用户名或者密码错误"); } //把map对象转换成json字符串类型,写入到内存,并返回给js文件 writer.write(JSON.toJSONString(map)); }
以上がAJax と json を使用して PHP でログイン検証を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。