外部文件引入到视图模板的方式

      1,将外部文件放在Public文件夹下,用load标签引入

      2,在模板出书写引入代码(方法有很多,只有以下方法不容易出问题)

<load href="__PUBLIC__/css/index.css"/>
<load href="__PUBLIC__/jquery/$jquery-1.0.js"/>
<load href="__PUBLIC__/js/index.js"/>

使用原生态的sql语句的方式

    public function index()
    {
        $db = D('yonghu');
        $sql = 'select * from yonghu';
        //查询时调用query()方法;返回一个二维数组。增删改调用execute()方法,返回受影响的条数;
        $yonghu = $db->query($sql);        var_dump($yonghu);   }

外部类引用到控制器方法中的两种方式(1,将类存放在ThinkPHP文件夹下2,将类存放在Home模块下)

控制器下方法代码

<?php
namespace Home\Controller;
use Think\Controller;
use Home\Common\page;                     //引入类文件
class IndexController extends Controller
{
    public function index()
    {
        $db = D('yonghu');
        $zongshu = $db -> count();        //查询数据库数据总数
        $page = new page($zongshu,1);     //实例化分页类(参数为:总条数和每页显示条数)
        $yonghu = $db -> limit($page -> limit) -> select();   //创建分页查询条件
        $fpage = $page->fpage();
        $this -> assign('yonghu',$yonghu);
        $this -> assign('fpage',$fpage);
        $this->display();
    }
}

视图模板代码

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>分页</title>
    <load>
</head>
<body>
    <table>
    <foreach name='yonghu' item='i'>    //循环
        <tr>
            <td><{$i.zhanghao}></td>
            <td><{$i.mima}></td>
        </tr>
    </foreach>
    </table>
    <div><{$fpage}></div>              //显示分页导航
</body>

在tp框架下使用ajax

       上传的路径-> url : "__CONTROLLER__/方法";

       返回的方式-> ajaxReturn(返回的内容,返回类型)   //返回类型默认为:   json   eval(字符串)   xml

Session 会话控制

       防止用户绕过登录直接访问操作方法

       做一个控制器的父类,在该父类里面写一个构造方法,构造方法里面判断session里面有没有值

TP框架下验证码的简单调用

       1,控制器代码

<?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller
{
    public function index()
    {
        if(empty($_POST['submit']))        //如果没有提交验证码正常显示界面
        {
            $this->display();
        }
        else
        {
            $yanzhengma = $_POST['yanzhengma'];
            $verify = new \Think\Verify();            //实例化验证码类
            if($verify -> check($yanzhengma))         //调用check方法验证验证码是否正确,正确返回true
            {
                $this -> success('验证成功','index');
            }
            else
            {
                $this -> error('验证失败');
            }
        }
    }

    public function yanzhengma()
    {
        $verify = new \Think\Verify();  //实例化验证码类
        $verify -> entry();             //调用entry方法生成验证码
    }
}

        2,视图模板代码

<head>
    <load href="__PUBLIC__/jquery/$jquery-1.0.js"/>
    <title>验证</title>
    <load>
</head>
<body>
    <form action="__ACTION__" method="post">
        <div>
            <span>验证码</span>
            <img src="__CONTROLLER__/yanzhengma"/>    <!--验证码图片路径为生成验证码的方法路径-->
            <input type="text" name="yanzhengma"/>    <!--输入验证码的文本框-->
        </div>
        <div>
            <input type="submit" name="submit" value="提交">
        </div>
    </form>
</body>

简单的文件上传模型

    public function shangchuan()
    {
        $upload = new \Think\Upload(); //实例化上传类
        $upload -> maxSize = '1000000'; //上传文件最大值
        $upload -> exts = array('jpg','gif');//上传文件格式
        $upload -> rootPath= './Pnblic';   //设置根路径
        $upload -> savePath = 'wenjian/';//文件上传的路径(相对根路径)
        $xinxi = $upload -> upload();  //获取是否上传成功
        var_dump($xinxi);
    }

第一零二天上课 PHP TP框架 引入文件路径问题和调用验证码的方式的更多相关文章

  1. 第一零四天上课 PHP TP框架下的文件上传

    控制器代码(TestController.class.php) <?php namespace Home\Controller; use Home\Controller\EmptyControl ...

  2. 第一零五天上课 PHP TP框架下分页

    控制器代码(TestController.class.php) <?php namespace Home\Controller; use Home\Controller\EmptyControl ...

  3. 第一零三天上课 PHP TP框架下控制器的方法分离

    (1)配置信息 修改配置文件->Config.php (配置后,原先的控制方法无效) 'ACTION_BIND_CLASS' => TRUE, // 控制器方法分离 (2)在Control ...

  4. TP框架主要文件夹注释

    TP框架主要文件夹注释 common -> 函数库目录 conf -> 配置文件目录lang -> 语言包librang -> 核心资源库 behacior -> 行为目 ...

  5. tp框架引入第三方sdk的经验总结

    tp框架开发常用到第三方的接口,这时候需要引入第三方的sdk.例如:微信扫码支付sdk,阿里大于的淘宝sdk等等 首先到官网上下载对应php的sdk文件,通常会有至少一个实例代码. 1 新建一个控制器 ...

  6. TP框架的模板路径问题以及常用的模板常量的定义

    在TP框架中,为了各个模块加载静态文件方便,往往是不需要按照默认的方式放置静态文件到/app/模块名/VIEWS/下面,而是在顶级目录下创建一个新的目录(比如说./tpl目录下),来存放静态文件   ...

  7. BootStrap框架引入文件

    bootstrap -- 框架 引入需要的  这是外网的------************************************************************* < ...

  8. 第 一 百 天上课 PHP TP框架 数据库修改和删除

    修改的三种方式 //造数组的方式修改 public function xiugai1() { $db=D('yonghu'); $attr=array ( 'zhanghao'=>001, // ...

  9. 第九十九天上课 PHP TP框架 数据库查询和增加

    在Model文件夹下创建模型,文件命名规则 : 表名Model.class.php <?php namespace Home\Model; use Think\Model; class yong ...

随机推荐

  1. C# 对List<T>取交集、连集及差集

    1. 取交集 List A :{1,5,9,3,7} List B:{1,6,8,5,3,2,9,4} var intersectedList = listA.Intersect(listB, new ...

  2. Day16_集合第二天

    1.LinkedList类(掌握) 1.特点 底层数据结构是链表,查询慢,增删快 线程不安全,效率高. LinkedList 成员方法 void addFirst(Object o) 添加 void ...

  3. java.lang.ClassNotFoundException: Didn't find class "*****(转载)

    很多人出现了java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{*****Activity}: java. ...

  4. maven web project打包为war包,目录结构的变化

    一个maven web project工程目录: 资源管理器中的目录层级如下: 导出为war包之后的目录层级为: 我们会发现,其实并没有如下的这些目录层级: 所以这两个目录层级只是IDE为我们添加的, ...

  5. python数据结构与算法——图的基本实现及迭代器

    本文参考自<复杂性思考>一书的第二章,并给出这一章节里我的习题解答. (这书不到120页纸,要卖50块!!,一开始以为很厚的样子,拿回来一看,尼玛.....代码很少,给点提示,然后让读者自 ...

  6. Thrift 个人实战--Thrift 的序列化机制

    前言: Thrift作为Facebook开源的RPC框架, 通过IDL中间语言, 并借助代码生成引擎生成各种主流语言的rpc框架服务端/客户端代码. 不过Thrift的实现, 简单使用离实际生产环境还 ...

  7. HBase 实战(1)--HBase的数据导入方式

    前言: 作为Hadoop生态系统中重要的一员, HBase作为分布式列式存储, 在线实时处理的特性, 备受瞩目, 将来能在很多应用场景, 取代传统关系型数据库的江湖地位. 本篇博文重点讲解HBase的 ...

  8. [转]Oracle 树操作(select…start with…connect by…prior)

    转自http://www.cnblogs.com/linjiqin/archive/2013/06/24/3152674.html Oracle 树操作(select-start with-conne ...

  9. windows下在yii中使用mongodb

    1.编译或下载对应dll动态链接库拓展文件,下载地址:点我,不知道如何编译windows下的dll拓展->点我 2.找到web服务器软件,如apache,nginx等webserver处理浏览器 ...

  10. Python 爬虫学习 urllib

    网页抓取 # -*-coding: utf-8 -*- import urllib url = "http://www.cndzz.com/" html = urllib.urlo ...