首页 后端开发 PHP问题 php如何使用AJax和json实现登录验证

php如何使用AJax和json实现登录验证

Jun 19, 2023 pm 01:28 PM
json ajax

php用AJax和json实现登录验证的方法是:1、创建一个jsp示例文件,导入jquery依赖和fastjson依赖文件;2、新建login.js文件,获取用户名和密码文本内容;3、新建controller类,查询用户是否存在并把对象转化为json字符串类型返回给js文件;4、js判断是否成功然后进行页面跳转即可。

php如何使用AJax和json实现登录验证

本教程操作系统:Windows10系统、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、新建controller类

查询是否存在此用户
把map对象转换成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));
		
	}
登录后复制

以上是php如何使用AJax和json实现登录验证的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

解决jQuery AJAX请求遇到403错误的方法 解决jQuery AJAX请求遇到403错误的方法 Feb 20, 2024 am 10:07 AM

标题:解决jQueryAJAX请求出现403错误的方法及代码示例403错误是指服务器禁止访问资源的请求,通常会导致出现这个错误的原因是请求缺少权限或者被服务器拒绝。在进行jQueryAJAX请求时,有时候会遇到这种情况,本文将介绍如何解决这个问题,并提供代码示例。解决方法:检查权限:首先要确保请求的URL地址是正确的,同时验证是否有足够的权限来访问该资

MySQL5.7和MySQL8.0的区别是什么? MySQL5.7和MySQL8.0的区别是什么? Feb 19, 2024 am 11:21 AM

MySQL5.7和MySQL8.0是两个不同的MySQL数据库版本,它们之间有以下一些主要区别:性能改进:MySQL8.0相对于MySQL5.7有一些性能改进。其中包括更好的查询优化器、更高效的查询执行计划生成、更好的索引算法和并行查询等。这些改进可以提高查询性能和整体系统性能。JSON支持:MySQL8.0引入了对JSON数据类型的原生支持,包括JSON数据的存储、查询和索引。这使得在MySQL中处理和操作JSON数据变得更加方便和高效。事务特性:MySQL8.0引入了一些新的事务特性,如原子

PHP 数组转 JSON 的性能优化技巧 PHP 数组转 JSON 的性能优化技巧 May 04, 2024 pm 06:15 PM

PHP数组转JSON的性能优化方法包括:使用JSON扩展和json_encode()函数;添加JSON_UNESCAPED_UNICODE选项以避免字符转义;使用缓冲区提高循环编码性能;缓存JSON编码结果;考虑使用第三方JSON编码库。

PHP 与 Ajax:构建一个自动完成建议引擎 PHP 与 Ajax:构建一个自动完成建议引擎 Jun 02, 2024 pm 08:39 PM

使用PHP和Ajax构建自动完成建议引擎:服务器端脚本:处理Ajax请求并返回建议(autocomplete.php)。客户端脚本:发送Ajax请求并显示建议(autocomplete.js)。实战案例:在HTML页面中包含脚本并指定search-input元素标识符。

解决jQuery AJAX请求403错误的方法 解决jQuery AJAX请求403错误的方法 Feb 19, 2024 pm 05:55 PM

jQuery是一个流行的JavaScript库,用于简化客户端端的开发。而AJAX则是在不重新加载整个网页的情况下,通过发送异步请求和与服务器交互的技术。然而在使用jQuery进行AJAX请求时,有时会遇到403错误。403错误通常是服务器禁止访问的错误,可能是由于安全策略或权限问题导致的。在本文中,我们将讨论如何解决jQueryAJAX请求遭遇403错误

Jackson库中注解如何控制JSON序列化和反序列化? Jackson库中注解如何控制JSON序列化和反序列化? May 06, 2024 pm 10:09 PM

Jackson库中的注解可控制JSON序列化和反序列化:序列化:@JsonIgnore:忽略属性@JsonProperty:指定名称@JsonGetter:使用获取方法@JsonSetter:使用设置方法反序列化:@JsonIgnoreProperties:忽略属性@JsonProperty:指定名称@JsonCreator:使用构造函数@JsonDeserialize:自定义逻辑

如何解决jQuery AJAX报错403的问题? 如何解决jQuery AJAX报错403的问题? Feb 23, 2024 pm 04:27 PM

如何解决jQueryAJAX报错403的问题?在开发网页应用程序时,经常会使用jQuery来发送异步请求。然而,有时候在使用jQueryAJAX时可能会遇到错误代码403,表示服务器禁止访问。这种情况通常是由服务器端的安全设置所导致的,但可以通过一些方法来解决这个问题。本文将介绍如何解决jQueryAJAX报错403的问题,并提供具体的代码示例。一、使

深入了解PHP:JSON Unicode转中文的实现方法 深入了解PHP:JSON Unicode转中文的实现方法 Mar 05, 2024 pm 02:48 PM

深入了解PHP:JSONUnicode转中文的实现方法在开发中,我们经常会遇到需要处理JSON数据的情况,而JSON中的Unicode编码在一些场景下会给我们带来一些问题,特别是当需要将Unicode编码转换为中文字符时。在PHP中,有一些方法可以帮助我们实现这个转换过程,下面将介绍一种常用的方法,并提供具体的代码示例。首先,让我们先了解一下JSON中Un

See all articles