thinkphp-登入接口示例

接着上一个笔记编写第一个后台接口

新建数据表

  • 在数据库zero中新建一个数据表,命名为db_account
thinkphp-登入接口示例_第1张图片
新建数据表
  • 编辑列。共有三列,id,name,password。并将id设为自增长和主键
thinkphp-登入接口示例_第2张图片
编辑列

编写后台接口

在控制器Controller目录中新建名为_A_mysql的php文件,此文件的功能是php操作mysql的常用代码,这里封装成一个文件,为了减少代码的重复,和方便修改mysql的登入信息。

_A_mysql.php代码如下


AccountController.class.php代码如下

 mysql_select($name);

        if(!$data['password'] || $data['password'] !== $password){
            $re->state = 0;  
        }else{
            $re->state = 1;
            $re->data->id = $data['id'];
        }
        $this->ajaxReturn($re);
    }
    
    public function addAccount(){
        $name = $_GET['name']; // 获取参数
        $password = $_GET['password']; // 获取参数
        $result = $this -> mysql_insert($name,$password);
        $this->ajaxReturn($result);
    }

    public function deleteAccount(){
        $name = $_GET['name']; // 获取参数
        $result = $this -> mysql_delete($name);
        $this->ajaxReturn($result);
    }

    public function setPassword(){
        $name = $_GET['name']; // 获取参数
        $password = $_GET['password']; // 获取参数
        $result = $this -> mysql_updata($name,$password);
        $this->ajaxReturn($result);
    }

    public function mysql_insert($name,$password){
        if(json_encode($this->mysql_select($name))=='false'){//是否重名
            include '_A_mysql.php';
            mysql_query("INSERT INTO db_account (name, password) 
                VALUES ('{$name}', '{$password}')");
            mysql_close($con);
            $re = 1;
        }else{
            $re = 0;
        }
        return $re;
    }

    public function mysql_delete($name){
        include '_A_mysql.php';
        mysql_query("DELETE FROM db_account WHERE name='{$name}'");
        mysql_close($con);
        return;
    }

    public function mysql_updata($name,$password){
        include '_A_mysql.php';
        mysql_query("UPDATE db_account SET password = '{$password}'
            WHERE name = '{$name}' ");
        mysql_close($con);
        return;
    }

    public function mysql_select($name){
        include '_A_mysql.php';
        $sql = "SELECT * FROM db_account WHERE name='{$name}'";
        $result = mysql_query($sql);
        $row = mysql_fetch_array($result);//获取一行数据
        mysql_close($con);
        return $row;
    }
}

访问接口

在浏览器中输入

http://localhost/zero/index.php/Home/Account/addAccount?name=adrian&password=angel

thinkphp-登入接口示例_第3张图片
网页访问接口

在打开mysql管理工具,可以看到已经多了一条数据

thinkphp-登入接口示例_第4张图片
插入数据

ajax请求

打开包含有jqery.js的html页面的控制台

输入如下js代码

$.ajax({
    type: "GET",
    url: "http://localhost/zero/index.php/Home/Account/addAccount?",
    data: {
        name:'simon',
        password:'simon',
    },
    dataType: "json",
    success: function(result){
        console.log('成功回调',result);
    },
    error: function(result){
        console.log('失败回调',result);
    }
});
thinkphp-登入接口示例_第5张图片
Paste_Image.png

打开mysql管理工具,可以看到又多了一条记录

thinkphp-登入接口示例_第6张图片
ajax请求

你可能感兴趣的:(thinkphp-登入接口示例)