ajax异步提交数据到数据库

很多时候我们提交数据到服务器端数据库都是用form表单,这样子是最普通最简单提交数据的方法,你填写完表单后,post提交到后台文件.php,处理完后返回到指定页面,最后,页面就重新刷新了一遍,显示预想的页面。当然,这个逻辑操作没一点毛病,但有一点,那就是给用户不好的体验:重新刷新了页面。假如,用户没按要求输错了某个值,然后弹出一个框框告诉你“亲爱的,你刚刚花了半个小时注册的内容得重新输入了!!”,这时候,你肯定的mmp的,所以,咱们今天要推举的ajax异步post提交数据到数据库来解决这个问题。

先理解个概念吧:同步与异步

举个简单的例子:你用form表单,直接post提交数据到数据库,那是同步;你用ajax异步提交post,那是异步操作;就相当于,你有一样东西要给A,你直接放给他,然后他用完直接还给你,这就叫同步,而,你可以通过快递,间接给A东西,他也可以通过快递间接给你,当出现什么问题的时候,你可以告诉快递“我要换地址,我要改电话号码什么的操作”,这可以理解为异步。

那什么是ajax呢?

Ajax 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息,而不是整个页面。

好,说了这么多啦,咱们来看看具体的代码:登录界面(form表单提交的很简单,我就不举对比例子了,不懂的可以百度或者自己操作下)

先引入必要的文件:jquery.js,【layer.js弹出框框架可选用】

定义和用法

post() 方法通过 HTTP POST 请求从服务器载入数据。

语法

jQuery.post(url,data,success(data, textStatus, jqXHR),dataType)

参数

描述

url

必需。规定把请求发送到哪个 URL。

data

可选。映射或字符串值。规定连同请求发送到服务器的数据。

success(data, textStatus, jqXHR)

可选。请求成功时执行的回调函数。

dataType

可选。规定预期的服务器响应的数据类型。默认执行智能判断(xml、json、script 或 html)。

分析:

1、js获取input中的数据

2、判断数据是否满足要求(这里提一下layer,它是一个很好用很好看的前端弹出框框架,简单易学,可以去官网上看开发文档)

3、请求post的url地址

4、要传递到url地址的相关数据(参数案例:{name:"wzc",sno:"001"})

5、数据处理后返回函数

好,接下来,我们看看ajaxCheckLogin.php文件:

依次四个红框的解释为:

1、session和引入数据库连接文件(这里不扩展了,不会的下方评论,我教你php pdo扩展连接数据库)

2、获取从前端页面post过来的数据

3、mysql数据库操作语句和pdo操作

4、判断mysql操作是否正确,然后返回返回值

最后,你应该就可以学会了!

原文发布于微信公众号 - 程序员的碎碎念(gh_53e607dd4782)

原文发表时间:2017-11-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏我爱编程

基于ubuntu搭建FTP文件服务

3357
来自专栏Web 开发

Win平台安装MongoDB

时隔两年,一个内部项目用到了MongoDB,又要再次研究MongoDB啦。之前在Ubuntu上面安装、使用MongoDB都很流畅,但是在Win上面的CMD操作就...

820
来自专栏cvm功能

通过控制台vnc方式登录云主机

1)打开控制台,点击到云服务器的实例一栏,找到要登录的云主机,点击最右侧的操作栏的登录按钮。

1.8K10
来自专栏木子墨的前端日常

跨域相关

跨域是前端开发中经常遇到的一个问题,主要是由于请求的源地址与目标地址不同源产生的问题。下面我们就深入的了解和学习一下有关跨域的那些事儿。

1422
来自专栏实用工具入门教程

如何搭建微信订阅号后台服务

微信公众号后台自带的功能可能有时不能满足我们的需要,这时候我们就需要搭建自己的服务端。本实验带您从零开始,基于 NodeJS 搭建起一个可以支撑微信订阅号自动回...

9164
来自专栏云计算教程系列

如何在Ubuntu 16.04中安装Linux,Nginx,MySQL,PHP(LNMP堆栈)

LNMP软件堆栈是一组可用于为动态网页和Web应用程序提供服务的软件。它是一个描述带有Nginx Web服务器的Linux操作系统的首字母缩写词。其后端数据存储...

1121
来自专栏java闲聊

centos7下安装MongoDB

2184
来自专栏ascii0x03的安全笔记

HTML5离线缓存攻击测试(二)

经过昨天的测试,发现使用离线缓存的网站会被攻击。但是,不使用离线缓存的网站就真的不会受到这样的攻击么? 据我理解,按照标准当浏览器请求manifest文件时,若...

3596
来自专栏运维前线

CentOS 6.8 部署zookeeper集群

由于公司缓存方案改进,准备采用codis集群作为主要的缓存解决方案(codis:国内豌豆荚开发的redis集群解决方案,已开源,github地址:https:/...

24510
来自专栏张戈的专栏

抓取占用CPU高的JAVA线程,进而找出有问题的WEB页面

写在前面:当一个台 WEB 主机(JAVA 平台)上有多个站点时,很可能因为一个站点项目出现死锁之类的 BUG 而导致所有站点挂掉!最烦的就是因为站点过多,在日...

39815

扫码关注云+社区