ajax传参

      // 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传参

上一篇:js代码编写水仙花数和判断是否为质数


下一篇:ServiceNow 在onSubmit方法中进行Ajax查询校验数据