• ajax的内容


    ajax是什么?

    通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新,可以局部刷新而不必整个页面整体刷新。

    url的简单认识:

    进入服务器的三种方式:

    1.localhost:端口号(进入本机创建的服务器)

    http://localhost:8888/

    2.127.0.0.1:端口号(进入本机创建的服务器)

    http://127.0.0.1:8888/

    3.ip:端口号

    http://192.168.9.105:8888/

    上传数据到服务器的两种方法:

    第一种通过form表单:

    get方式

    <h1>通过get方式提交表单</h1>
        <form action="05.php" method="GET">
            <input type="text" placeholder="请输入用户名" name="userName">
            <br>
            <input type="text" placeholder="请输入技能" name="userSkill">
            <br>
            <input type="submit">
            <button>提交</button>
            <!-- <input type="image" src=""> -->
        </form>
    <?php
        echo "这个为get提交的页面";
    
    
        // $_GET[]   get提交方式从前台传递过来的数据
    
        echo "<br>";
        echo $_GET['userName'];
        echo "<br>";
        echo $_GET['userSkill'];
        echo "<br>";
        echo '<h1>'.$_GET['userName'].'欢迎你</h1>';   //在php中字符串拼接使用的是.
    ?>

    post方式:

    <h1>通过post方式提交表单</h1>
        <form action="06.php" method="POST">
            <input type="text" placeholder="请输入用户名" name="userName">
            <br>
            <input type="text" placeholder="请输入技能" name="userSkill">
            <br>
            <input type="submit">
            <button>提交</button>
            <!-- <input type="image" src=""> -->
        </form>
    <?php
        echo "这个为get提交的页面";
        echo "<br>";
        echo $_POST['userName'];
        echo "<br>";
        echo $_POST['userSkill'];
        echo "<br>";
        echo '<h1>'.$_POST['userName'].'欢迎你</h1>';   //在php中字符串拼接使用的是.
    ?>

    第二种通过ajax提交到后台

    原生ajax get版本

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>ajax</title>
    </head>
    <body>
        <script>
            // 一般情况下只能在有服务的环境下发送请求
    
            // ajax是局部刷新
    
    
            // 1.创建ajax对象-xmlhttprequest对象
            // XMLHttpRequest 对象
    
            // variable=new XMLHttpRequest();    新版本的浏览器
            // variable=new ActiveXObject("Microsoft.XMLHTTP");    //老版本的IE  ,IE5,IE6
            var xhr;
            if(window.XMLHttpRequest){    //常规,如果有,直接使用
                xhr = new XMLHttpRequest();
            }else{   //如果没有,老版本IE
                xhr = new ActiveXObject("Microsoft.XMLHTTP");
            }
            console.log(xhr)
            console.log("状态码:" + xhr.readyState);
            console.log('响应码:' + xhr.status);
            console.log('响应文本:' + xhr.responseText);
            console.log('步骤一完成')
    
    
            // 2.通过监听ajax的状态的改变来监听
            xhr.onreadystatechange = function(){
                console.log('xhr的状态码发生了改变');
                console.log("状态码:" + xhr.readyState);
                console.log('响应码:' + xhr.status);
                console.log('响应文本:' + xhr.responseText);
                console.log('
    ');
            }
            console.log('步骤二完成')
    
            // 3.创建请求的消息,连接服务器      状态码0=>1
            xhr.open('GET','07.php',true);    //最后一个参数是bool,表示同步||异步,true异步
            console.log('步骤三完成')
    
            // 4.发送
            xhr.send(null);   //如果是post请求,就放post参数,如果是get请求,发送null就行了 
    
            // •0: 请求未初始化
            // •1: 服务器连接已建立
            // •2: 请求已接收
            // •3: 请求处理中
            // •4: 请求已完成,且响应已就绪
    
    
            // 响应码:
            // 1xx   信息类
            // 2xx   成功     200
            // 3xx   重定向    304
            // 4xx   客户端错误   404
            // 5xx   服务端错误   
    
            // 参考
            // https://blog.csdn.net/ddhsea/article/details/79405996
    
    
    
        </script>
    </body>
    </html>
    <?php
        for($i = 0;$i<5;$i++){
            // echo "hello world".$i;
            echo "hello world $i";    //双引号直接可以写变量,但是单引号不行,就表示一个串
            echo "<br>";
    
        }
    
    
    ?>

    jquery版本的ajax

    $("#btn").click(function(){
                $.ajax({
                    type : "POST",
                    url : "http://192.168.9.154:8888/0221ajax/01.php",
                    data : {
                        uname : $("#username").val()
                    },
                    success : function(data){   //就是原生的xhr.responseText
                        console.log(data);
                        if(data == 0){
                            $("#ts").html("该用户名可以使用").css("color","green");
                        }else if(data == 1){
                            $("#ts").html("该用户名已被占用").css("color","red");
                        }
                    },
                    error : function(err){    //错误的
                        console.log(err)
                    }
                })
            })
    <?php
        header("ACCESS-CONTROL-ALLOW-ORIGIN:*");
        header("ACCESS-CONTROL-ALLOW-Methods:POST,GET");
    
        $db = ['jack','mack','mary'];   //模拟数据库
        $username = $_REQUEST['uname'];  //表示可以接收post参数或者get参数
    
        $flag = false;
        foreach($db as $n){
            if($n === $username){
                $flag = true;
                break;
            }
        }
    
        if($flag){
            echo "1";
        }else{
            echo "0";
        }
    
    ?>
  • 相关阅读:
    ImageLoader配置(凝视)
    Javaproject集成log4j 2.x
    kafka入门样例 for java
    php&amp;&amp;页面静态化
    Windows 下Oracle database 9i 64bit 仅仅有 Windows Itanium 64bit
    苹果新的编程语言 Swift 语言进阶(三)--基本运算和扩展运算
    Visual Studio2008 和2010 执行程序出现的黑框马上消失解决方法
    Cocos2d-x 3.0 Schedule in Node
    zend framework获取数据库中枚举类enum的数据并将其转换成数组
    OpenGl 坐标转换
  • 原文地址:https://www.cnblogs.com/tangdiying/p/10439404.html
Copyright © 2020-2023  润新知