tthinkphp对于ajax的调用及session的用法

2021-06-29 15:05

阅读:383

YPE html>

标签:pac   html   inpu   类构造   复制   content   ace   实用   color   

一、ajax对于php是非常实用的一种方法,那么在thinkphp框架中ajax是不是一样好用呢?答案是肯定的。thinkphp针对ajax也有自己独特的用法:

首先我们在自己建的Admin文件下建立一个Index文件夹,然后在这个文件夹里边建一个ceshi.html文件,要用ajax就要用到jquery文件,所以我们要将jquery文件复制到Public文件夹下进行调用:

span>"-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
"http://www.w3.org/1999/xhtml">"Content-Type" content="text/html; charset=utf-8" />
无标题文档select id ="leibie">
    select>

然后我们在Controller文件夹内新建一个IndexController.class.php的文件,在里边添加ceshi方法和shuju方法:

php
namespace Admin\Controller;
use Think\Controller;
class IndexController extends Controller{
    public function index(){
        echo "欢迎使用Thinkphp";
    }
        public function ceshi(){
            $this->show();
        }
        public function shuju(){
                $n = M("leibie");//创建leibie表模型
                $arr = $n->select();
                $this->ajaxReturn($arr);//调该方法返回数据
        }
    }

看一下结果:

技术分享

这就是thinkphp中ajax的用法,非常方便实用。

二、session在thinkphp中的使用,用于验证用户是否登录:

在thinkphp中session不用手动开启,默认就是开启的:

首先在Cotroller文件夹内建一个LoginController.class.php

php
namespace Home\Controller;
use Think\Controller;
class LoginController extends Controller{
    public function login(){
        if(empty($_POST)){
            $this->show();
        }
        else{
            $uid = $_POST["uid"];
            $pwd = $_POST["pwd"];
            $n=M("users");
            $arr = $n->find($uid);
            if($arr["pwd"]==$pwd && !empty($pwd)){//验证密码
                session("uid","$uid");
            }
            else{
                echo "登录失败";
            }
        }
    }
}

然后在View文件夹下新建一个login.html:

span>"-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
"http://www.w3.org/1999/xhtml">
"Content-Type" content="text/html; charset=utf-8" />
无标题文档

登录页面

"__ACTION__" method="post">
用户名:"text" name="uid">
密码:"password" name="pwd">
"submit" value="登录">

 然后最关键的是需要建立一个父类BaseController.class.php:

php
namespace Home\Controller;
use Think\Controller;
class BaseController extends Controller{
    public function __construct(){
        //调用父类构造
        parent::__construct();
        //写session控制
        if(session("?uid")){
        }else{
            $this->redirect("Login/login");
        }
    }
}

然后我们其他所有的控制器都继承新建的这个BaseController就可以了:

php
namespace Admin\Controller;
use Home\Controller\BaseController;
class IndexController extends BaseController{
    public function index(){
        echo "欢迎使用Thinkphp";
    }
        public function ceshi(){
            $this->show();
        }
        public function shuju(){
                $n = M("leibie");//创建leibie表模型
                $arr = $n->select();
                $this->ajaxReturn($arr);//调该方法返回数据,如果是字符串,后边加eval
        }
            }

 

tthinkphp对于ajax的调用及session的用法

标签:pac   html   inpu   类构造   复制   content   ace   实用   color   

原文地址:http://www.cnblogs.com/mengshenshenchu/p/7137769.html


评论


亲,登录后才可以留言!