thinkPHP框架之使用篇三

一、Id  隐藏

<p>

<input class="text-input small-input" type="hidden" id="id" name="id" value="{$result.id}"/>

</p>


二、重写父类方法

public $model = null;
// (重写)框架的构造方法,运行工程时框架内部会执行,作用是初始化常用属性, 方法等初始化工作
public function __construct()
{
    // 调用父类方法
    parent::__construct();
    $this->model = M(‘Product‘);

}

完善后

PublicAction

继承父类

构造函数

class PublicAction extends Action {

public $model = null;
    //框架的构造方法,运行工程师框架内部会执行,作用是初始化常用的属性,方法等初始化工作
    public function __construct()
    {
        //调用父类方法
        parent::__construct();
        //获取当前子类的名;
        $class_name = get_class($this);
        $name = substr($class_name,0,-6);
//        dump($name);exit();

$this->model = M($name);

}

}


三、上传文件

文件上传两大核心:

<form action="__APP__/product/update" method="post" enctype="multipart/form-data> 支持文件上传

<input class="text-input medium-input" type="file" id="" name="img" /> 文件类型

查手册—》文件上传

// 文件上传
import(‘ORG.Net.UploadFile‘);
$upload = new UploadFile();// 实例化上传类
$upload->maxSize  = 3145728 ;// 设置附件上传大小
$upload->allowExts  = array(‘jpg‘, ‘gif‘, ‘png‘, ‘jpeg‘);// 设置附件上传类型
$upload->savePath =  ‘./Public/Uploads/‘;// 设置附件上传目录
if(!$upload->upload()) {// 上传错误提示错误信息 CMD进入upload()方法
    $this->error($upload->getErrorMsg());
}else{// 上传成功 获取上传文件信息
    $info =  $upload->getUploadFileInfo();
}
// 保存表单数据 包括附件数据
$User = M("User"); // 实例化User对象
$User->create(); // 创建数据对象
$User->photo = $info[0][‘savename‘]; // 保存上传的照片根据需要自行组装
$User->add(); // 写入用户数据到数据库
$this->success(‘数据保存成功!‘);

Mac 系统下修改文件权限,可以自动创建文件

// 尝试创建目录      权限  
if(!mkdir($savePath,777,true)){

文件修改权限用Linux修改

sudo chmod -R 777 /Applications/XAMPP/xamppfiles/htdocs/phprise/Public

// 对上传文件按日期建文件夹分类

$year = date(‘Y‘);
$month = date(‘M‘);

$day = date(‘d‘);

$upload->savePath =  ‘./Public/Uploads/‘.$year.‘/‘.$month.‘/‘.$day.‘/‘;// 设置附件上传目录
// 生成缩略图
$upload->thumb = true;
$upload->thumbMaxWidth = ‘50,200‘;

$upload->thumbMaxHeight = ‘50,200‘;

整体:

if (!empty($_FILES[‘img‘][‘name‘])){
            // 文件上传
            import(‘ORG.Net.UploadFile‘);
            $upload = new UploadFile();// 实例化上传类
            $upload->maxSize  = 3145728 ;// 设置附件上传大小

$upload->allowExts  = array(‘jpg‘, ‘gif‘, ‘png‘, ‘jpeg‘);// 设置附件上传类型

$year = date(‘Y‘);
            $month = date(‘M‘);

$day = date(‘d‘);

$upload->savePath =  ‘./Public/Uploads/‘.$year.‘/‘.$month.‘/‘.$day.‘/‘;// 设置附件上传目录
            // 生成缩略图
            $upload->thumb = true;
            $upload->thumbMaxWidth = ‘50,200‘;

$upload->thumbMaxHeight = ‘50,200‘;

if(!$upload->upload()) {// 上传错误提示错误信息
                $this->error($upload->getErrorMsg());
            }else{// 上传成功 获取上传文件信息
                $info =  $upload->getUploadFileInfo();
//                dump($info);exit();
                // 保存到数据库中
                // 拼接图片路径
                $img_path = $info[0][‘savepath‘].$info[0][‘savename‘];
//                dump($img_path);exit();
                $_POST[‘img_path‘] = $img_path;

}

}


四、<!--指定当前的默认路径—> 在<head></head>标签内些

<base href="__ROOT__/"/>


五、模板整体拼接新方法 代替

public function index(){

//       $this->view();
        // 获取当前方法的Tpl文件内的模板
        $result = $this->fetch();
        $this->assign(‘result‘, $result);
//        dump($result);exit();

$this->display(‘Public:layout‘);

}

代替 view()

public function view(){
    $this->display(‘Public:header‘);
    $this->display();
    $this->display(‘Public:right‘);
    $this->display(‘Public:footer‘);
}


六、 正则表达式

//    var reg1 = /^[a-zA-Z\d]{1}\[email protected]\w+(.(com|net))?.(cn|com)$/; // 实体

时间: 2024-10-20 13:41:29

thinkPHP框架之使用篇三的相关文章

thinkPHP 框架开发极速快三网站开发环境部署运行调试

环境要求 1.极速快三网站开发(Q2222168869) 下载 2.thinkPHP 框架开发各地快三玩法 下载 3.Apache Maven 3.3+ 下载 4.MySql 5.7+ 下载 导入到Eclipse 1.检出JeeSite4源代码: 2.拷贝web文件夹,到你的工作目录(不包含中文和空格的目录)下,重命名为你的工程名,如:jeesite-demo 3.打开pom.xml文件,修改第13行,artifactId为你的工程名,如:<artifactId>jeesite-demo<

thinkPHP框架之初识篇

安装框架 XAMPP:XML.Apache.MySQL.PHP.PERL LAMP : Linux.Apache.MySQL.PHP LNMP :Linux.Ningx.MySQL.PHP J2EE : 贵 linux命令 1.关闭系统自带apache sudo /usr/sbin/apachectl stop 2.查看Apache系统进程 ps -ef | grep httpd 3.查看MySQL进程 ps -ef | grep mysql 4.查看PHP版本 php -version 5.显

Thinkphp框架回顾(三)之怎么实现平常的sql操作数据库

1.首先简单介绍一下我们的数据库,thinkphp数据库下有一个tp_user表,然后有四个字段....id,username,password,sex 我们今天的任务就是在Thinkphp下将数据调出来.(增删查改) <?php // 本类由系统自动生成,仅供测试用途 class IndexAction extends Action { public function select(){ /*这是从数据库里读取数据 * 有select();find();getfield()三种方法 //$m=

ThinkPHP框架快速开发网站

使用ThinkPHP框架快速搭建网站 这一周一直忙于做实验室的网站,基本功能算是完成了.比较有收获的是大概了解了ThinkPHP框架.写一些东西留作纪念吧.如果对于同样是Web方面新手的你有一丝丝帮助,那就更好了挖. 以前用PHP做过一个很蹩脚的网站,为什么这么说呢,因为写的全是死代码.做完以后觉得实在是累,前端要div+css,js 后端要php,mysql,这么多东西要弄,十分头疼.所以,在接到做网站的任务后,我第一时间想到一定要使用开发框架去做,绝不能跟以前一样那么累了. 我选择的是PHP

制作类似ThinkPHP框架中的PATHINFO模式功能(二)

距离上一次发布的<制作类似ThinkPHP框架中的PATHINFO模式功能>(文章地址:http://www.cnblogs.com/phpstudy2015-6/p/6242700.html)已经过去好多天了,今晚就将剩下的一些东西扫尾吧. 上一篇文章已经实现了PATHINFO模式的URL,即我们访问MVC模式搭建的站点时,只需要在域名后面加上(/module/controller/action)即可,很智能化.并且通过new Object时的自动触发函数实现类文件的自动载入,因此只要我们搭

使用ThinkPHP框架高速开发站点(多图)

使用ThinkPHP框架高速搭建站点 这一周一直忙于做实验室的站点,基本功能算是完毕了.比較有收获的是大概了解了ThinkPHP框架.写一些东西留作纪念吧.假设对于相同是Web方面新手的你有一丝丝帮助,那就更好了挖. 曾经用PHP做过一个非常蹩脚的站点,为什么这么说呢,由于写的全是死代码.做完以后认为实在是累,前端要div+css,js 后端要php,mysql,这么多东西要弄,十分头疼.所以,在接到做站点的任务后,我第一时间想到一定要使用开发框架去做,绝不能跟曾经一样那么累了. 我选择的是PH

thinkphp框架 链接数据库和操作数据

框架有时会用到数据库的内容,在"ThinkPhp框架知识"的那篇随笔中提到过,现在这篇随笔详细的描述下. 一.链接数据库 (1)找到模块文件夹中的Conf文件夹,然后进行编写config.php文件 (2)打开这个config.php文件,然后找到父类配置文件convention.php文件,将关于"数据库"的部分复制粘贴到config.php配置文件中 /* 数据库设置 */    'DB_TYPE'               =>  '',     //

thinkphp框架 的 链接数据库和操作数据

框架有时会用到数据库的内容,在"ThinkPhp框架知识"的那篇随笔中提到过,现在这篇随笔详细的描述下. 一.链接数据库 (1)找到模块文件夹中的Conf文件夹,然后进行编写config.php文件 (2)打开这个config.php文件,然后找到父类配置文件convention.php文件,将关于"数据库"的部分复制粘贴到config.php配置文件中 /* 数据库设置 */    'DB_TYPE'               =>  '',     //

使用ThinkPHP框架高速发展网站(多图)

使用ThinkPHP框架高速搭建站点 这一周一直忙于做实验室的站点,基本功能算是完毕了.比較有收获的是大概了解了ThinkPHP框架.写一些东西留作纪念吧.假设对于相同是Web方面新手的你有一丝丝帮助,那就更好了挖. 曾经用PHP做过一个非常蹩脚的站点,为什么这么说呢,由于写的全是死代码.做完以后认为实在是累,前端要div+css,js 后端要php,mysql,这么多东西要弄,十分头疼.所以,在接到做站点的任务后,我第一时间想到一定要使用开发框架去做,绝不能跟曾经一样那么累了. 我选择的是PH