// ajax传参
        // ajax传参特点:
        //   1,不需要跳转
        //   2,ajax传参,都是异步程序
        //     不影响同步程序的执行
        //     即使请求交互没有完成,其他程序也可以正常执行
        // ajax:
        //  async       异步
        //  JavaScript 
        //  and
        //  XML
        //  一个异步的 JavaScript 和 XML 的数据交互
        // ajax 的基本步骤和过程
        // 1, 需要创建一个 ajax 对象
        //    const xhr = new XMLHttpRequest();
        // 2, 配置请求内容和数据
        //    xhr.open( '请求方式get/post' , '请求地址?键名=数值&键名=数值' );
        //        get方式可以在 请求地址之后直接拼接传参的键值对
        //        post方式在 open 中 只定义 请求url地址
        //       
        // 3, 发送请求
        //   xhr.send();
        //   post 请求 在 send() 阶段 来定义参数
        //   (1),定义 请求头 信息
        //   xhr.setRequestHeader('content-type' , 'application/x-www-form-urlencoded');
        
        //   (2),定义 参数
        //   xhr.send(以字符串形式传递参数)
        //   xhr.send('name=张三&age=18')   字符串是键值对形式,多个键值对以&符号间隔
        //   xhr.send({name:'张三' , age:18})
        // 4, 接收请求结果,响应体内容
        //   xhr.onload = function(){}
 
oBtn.addEventListener('click' , ()=>{
            // 点击时,先获取数据,在发送ajax请求给PHP程序
            // 获取数据
            let val1 = oIpt1.value;
            let val2 = oIpt2.value;
            // 1,创建 ajax对象
            const xhr = new XMLHttpRequest();
            // 2,设定 ajax传参对象和数据
            xhr.open('get' , `./get.php?userName=${val1}&userPwd=${val2}`);
            // 3,发送ajax请求
            xhr.send();
            // 4,接收请求响应体
            xhr.onload = function(){
                // 响应体内容 存储在 response 或者 responseText 中
                // 一般后端返回的响应体都是json串格式,需要还原成json串格式
                console.log(xhr.response);
                console.log( JSON.parse(xhr.response) );
            }
        })
 
<?php
// 1,php接收参数
$userName = $_POST['userName'];
$userPwd = $_POST['userPwd'];
// 2,PHP需要操作数据库
// 通过 PHP提供的 mysqli 函数方法来操作数据库
// 本质也是通过SQL语句来操作数据库,只是执行是通过PHP程序执行
// 2-1链接MySQL数据库服务器
//                      数据库地址     账号     密码      库名       端口号
$link = mysqli_connect( '127.0.0.1' , 'root' , 'root' , 'nz2003' , 3306 );
// 2-2定义SQL语句
$sql = "INSERT INTO `user` (`username` , `userpwd`) VALUES ( '{$userName}' , '$userPwd' ) ";
// 2-3执行SQL语句
// 第一个参数 : 链接的数据库信息
// 第二个参数 : 要执行的SQL语句
// 非查询语句,执行结果 是 布尔类型
$result = mysqli_query( $link , $sql );
// 会根据执行结果,返回信息
// 返回内容都是比较复杂的内容
if($result){
    $arr = [
        'res' => '1',
        'msg' => '注册成功',
    ];
}else{
    $arr = [
        'res' => '0',
        'msg' => '注册失败,用户名重复',
    ];
}
echo  json_encode($arr);

ajax传参的更多相关文章

  1. jq中的ajax传参

        一.   jq中的Ajax传参有两种           1.通过url地址来传参    2.通过data来传递参数 1. url来传递参数 function GetQuery(id) { | ...

  2. ajax传参到实体类对应字段

    之前看公司的代码,从页面ajax传参数到接口类,接口类用一个实体接收.我一直以为c#会自动识别,赋值到同名的字段. 我曾和朋友讨论过,双方辩论.朋友认为c#没有这种功能,没有这样高级匹配的机制.而我因 ...

  3. Ajax传参讲解

    客户端和服务器 1.请求:request 2.响应:response 服务器响应事件:onreadystatechange() send() 用于向后台传递参数: Ajax的请求方式 get:    ...

  4. ajax传参data里面的键是一个变量的解决方法

    直接用这种方式来传参,比如bean中有字段 username password,则是 data[username] = "用户名"; data[password] = " ...

  5. jq ajax传参的两种方式

    第一种   在url ? 后通过拼接传参   第二种 通过data传参 (1)第一种方法:(通过url传参) function GetQuery(id) { if (id ==1||id==7) { ...

  6. 超全table功能Datatables使用的填坑之旅--2:post 动态传参: 解决: ajax 传参无值问题.

    官网解释与方法:1 当向服务器发出一个ajax请求,Datatables将会把服务器请求到的数据构造成一个数据对象. 2 实际上他是参考jQuery的ajax.data属性来的,他能添加额外的参数传给 ...

  7. ajax 传参 乱码问题

    http://blog.csdn.net/yiyuhanmeng/article/details/7548505 开发一直用firfox网页,调试什么的都很方便.所以遇到了浏览器之间的兼容问题.url ...

  8. 跨域问题及jQuery中Ajax传参的讲解

    1.跨域:不再同一服务器下,就是协议,域名,端口,有一个不一样: 浏览器对于javascript的同源策略的限制: 案例: 以 http://172.164.23:8088/ 为例 相同域名:172. ...

  9. springMVC通过ajax传参到后台

    JSON对象和JSON字符串 在SpringMVC环境中,@RequestBody接收的是一个Json对象的字符串,而不是一个Json对象.然而在ajax请求往往传的都是Json对象,用 JSON.s ...

  10. jq checkbox 的全选并ajax传参

    /全选按钮 $("#all").click(function(){ if(this.checked){ $(":checkbox").prop("ch ...

随机推荐

  1. 浅析Golang map的实现原理

    Golang中的map底层使用的数据结构是hash table,基本原理就和基础的散列表一致,重点是Golang在设计中采用了分桶(Bucket),每个桶里面支持多个key-value元素的这种思路, ...

  2. Java面试题:请谈谈Java中的volatile关键字?

    在Java中,volatile关键字是一种特殊的修饰符,用于确保多线程环境下的变量可见性和顺序性.当一个变量被声明为volatile时,它可以确保以下两点: 内存可见性:当一个线程修改了一个volat ...

  3. 力扣350(java&python)-两个数组的交集 II(简单)

    题目: 给你两个整数数组 nums1 和 nums2 ,请你以数组形式返回两数组的交集.返回结果中每个元素出现的次数,应与元素在两个数组中都出现的次数一致(如果出现次数不一致,则考虑取较小值).可以不 ...

  4. EasyNLP发布融合语言学和事实知识的中文预训练模型CKBERT

    简介: 本⽂简要介绍CKBERT的技术解读,以及如何在EasyNLP框架.HuggingFace Models和阿里云机器学习平台PAI上使⽤CKBERT模型. 导读 预训练语言模型在NLP的各个应用 ...

  5. Java 应用压测性能问题定位经验分享

    简介: 问题千千万,但只要修练了足够深厚的内功,形成一套属于自己的排查问题思路和打法,再加上一套支撑问题排查的工具,凭借已有的经验还有偶发到来的那一丝丝灵感,相信所有的问题都会迎刃而解. 作者:凡勇 ...

  6. 基于Serverless的云原生转型实践

    简介: 新一代的技术架构是什么?如何变革?是很多互联网企业面临的问题.而云原生架构则是这个问题最好的答案,因为云原生架构对云计算服务方式与互联网架构进行整体性升级,深刻改变着整个商业世界的 IT 根基 ...

  7. DLF +DDI 一站式数据湖构建与分析最佳实践

    简介: 本文由阿里云数据湖构建 DLF 团队和 Databricks 数据洞察团队联合撰写,旨在帮助您更深入地了解阿里云数据湖构建(DLF)+Databricks 数据洞察(DDI)构建一站式云上数据 ...

  8. Effective Java 在工作中的应用总结

    简介: <Effective Java>是一本经典的 Java 学习宝典,值得每位 Java 开发者阅读.笔者将书中和平日工作较密切的知识点做了部分总结. ​ 作者 | 宜秋 来源 | 阿 ...

  9. 【LGR-170-Div.3】洛谷基础赛 #6 & Cfz Round 3 & Caféforces #2

    这套题感觉质量很高,思维含量大概div.2? A.Battle \[x \equiv r(\bmod P) \] \[P \mid x - r \] 因此只有第一次操作是有效的. void solve ...

  10. golang 并发问题

    如何使用channel实现定时器? 使用channel的阻塞,里面放一个sleep就可以了 Go语言--goroutine并发模型: 视频地址: https://www.bilibili.com/vi ...