童攀TP5企业网站实战笔记
$this->assign('data',$data)
---恢复内容开始---
- return view(); 载入视图
- {include file='public/head'} 包含文件
- {:url('admin/add')} 视图中跳转链接
- input('post.'); 获取post来的全部数据
- request()->isPost() 判断数据是不是post过来的
if(request()->isPost()){
$data=input('post.');
$res=db('admin')->insert($data);
if($res){
$this->success('添加管理员成功!',url('lst'));
}else{
$this->error("添加管理员失败!");
}
} - $res=db('admin')->field('name')->select(); select是查询所有数组,find()是查询一条记录
- $res=db('admin')->where(array('id'=>1))->find();
- 实例化表 1 助手函数 db('admin') 2 Db()类操作 先引入 use think\Db; 再实例化 $admin=Db::name('admin')
- 栏目无限极分类
class Cate extends Model
{
function catetree()
{
$cateres=$this->select();
return $this->sort($cateres);
} function sort($data,$pid=0,$level=0)
{
static $arr=array();
foreach($data as $v){
if($v['pid']==$pid){
$v['level']=$level;
$arr[]=$v;
$this->sort($data,$v['id'],$level+1);
}
}
return $arr;
} }
//调用该方法
$admin->catetree();
echo str_repeat(' |--',$cate['level']); - 在模板中进行条件判断 {if condition='$cate.type eq 1'} 单页 {else} 列表 {/if}
- 前置操作
class Index extends Controller
{
protected $beforeActionList = [
'first',
'second' => ['except'=>'hello'],
'three' => ['only'=>'hello,data'],
];
……
…………
}a、执行本类的所有方法前都会先执行first方法
b、除了hello方法,执行本类的其他方法前都会先执行first方法
c、只有执行hello和data方法前才会执行three方法 {:url('del',array('id'=>$admin['id']))} 带参数的url跳转,注意参数值不能用点模式
给模板分配数据
$this->assign('data',$data)
以数组形式给模板分配多条数据
$this->assign(array(
'cates'=>$cates,
'cateres'=>$cateres
));<div style="padding-top:10px;">
{$artres->render()}
</div>{if condition="$art.author eq ''"} 未填写
{else}
{$art.author}
{/if}排序
<td align="center"><input name="{$link.id}" type="text" style="width:50px; text-align:center;" value="{$link.sort}"></td>
if(request()->isPost()){
$sorts=input('post.');
foreach ($sorts as $k => $v) {
$link->update(['id'=>$k,'sort'=>$v]);
}
$this->success('更新排序成功!',url('lst'));
return;
}控制器驼峰法命名,比如AuthGroup,在浏览器上访问时要输入auth_group
<!-- 引用百度编辑器 --> <script src="__ADMIN__/ueditor/ueditor.config.js"></script>
<script src="__ADMIN__/ueditor/ueditor.all.min.js"></script> <script type="text/javascript"> //实例化编辑器
//建议使用工厂方法getEditor创建和引用编辑器实例,如果在某个闭包下引用该编辑器,直接调用UE.getEditor('editor')就能拿到相关的实例
UE.getEditor('content',{initialFrameWidth:800,initialFrameHeight:400,});//'content'为要引入百度编辑器的文本域的id
</script>验证码
视图html文件添加:<div><img src="{:captcha_src()}" alt="captcha" style="width: 100px;height: 30px;cursor: pointer;"
onclick="this.src='{:captcha_src()}?'+Math.random();" /></div>在模板中调用session值
{$Request.session.name}
童攀TP5企业网站实战笔记的更多相关文章
- 【读书笔记《Bootstrap 实战》】4.企业网站
上一章有对个人作品站点进行一些优化.本章,轮到我们充实这个作品站点了,补充一些项目,从而展示我们的能力.换句话说,我们要构建一个相对复杂的企业网站主页. 下面有几个成功企业的网站: □ Zappos ...
- Spring3.x企业开发应用实战读书笔记 —— 第三章IoC容器概述
声明: 本篇博客绝大多数内容为<Spring3.x企业开发应用实战>一书原内容,所有版权归原书作者所有!,仅供学习参考,勿作他用! 3.2 相关Java基础知识 Java语言允许通过 ...
- 轻量级Java EE企业应用实战(第4版):Struts 2+Spring 4+Hibernate整合开发(含CD光盘1张)
轻量级Java EE企业应用实战(第4版):Struts 2+Spring 4+Hibernate整合开发(含CD光盘1张)(国家级奖项获奖作品升级版,四版累计印刷27次发行量超10万册的轻量级Jav ...
- Unity3D项目实战笔记(10):Unity3D编译IPA的PostEvents–节约时间利器
最近,SDK支付等接入差不多了,就从Unity3D生成IPA (企业版License), 然,需要手动执行的PostEvents竟然多大10项+, 这些我默默的承受了1周时间,每次约浪费20分钟-额外 ...
- 机器学习实战笔记-k-近邻算法
机器学习实战笔记-k-近邻算法 目录 1. k-近邻算法概述 2. 示例:使用k-近邻算法改进约会网站的配对效果 3. 示例:手写识别系统 4. 小结 本章介绍了<机器学习实战>这本书中的 ...
- 【Bootstrap】4.企业网站(待续)
上一章有队个人站点站点进行一些优化.本章,轮到我们充实这个作品站点了,补充一些项目,从而展示我们的能力.话句话说,我们要构建一个相对复杂的企业网站主页. 下面有几个成功企业的网站: □ Zappos ...
- 【JavaEE企业应用实战学习记录】optiontransferselect实现两个列表选择框
<%@ page contentType="text/html; charset=GBK" language="java"%> <%@tagl ...
- 20个最漂亮的基于WordPress的企业网站
20个最漂亮的基于WordPress的企业网站 每个人都知道很好很强大的WordPress是开源的,并且有一个很强的的团队和更强大的支持社区.它被世界上的广大设计师.程序员和商业人员广泛使用.它已经成 ...
- 小型工厂企业网站究竟该怎么做好SEO优化,从而带来更多订单?
中 小企业以及小型工厂做好SEO工作,每年从SEO带来的订单量还是很可观的,随着互联网的蓬勃发展,越来越多的小型工厂型企业网站开始逐渐走向互联网营 销,开始逐渐利用互联网开展销售工作!但是大部分的工厂 ...
随机推荐
- 为什么用CDN给你网站加速?
大多数人都知道,一个用户在打开一个新网站的时候,如果网站打开的速度过慢,用户是很难继续浏览的.因而很多网站的运营人员想方设法的提高网站的加载速度.我们也相信速度是一个成功网站的必备要素之一,速度不够快 ...
- Node.js学习笔记(三): 事件机制
大部分的nodejs核心api都建立在异步的事件驱动架构之上,所以events是Node.js 最重要的模块,它提供了唯一的接口.events 模块不仅用于用户代码与 Node.js 下层事件循环的交 ...
- dp水一天
水一些dp的联系题 标签: dp ###hdu_2045 题意 一穿珠子,用三种颜色染色,要求相邻的珠子和两端的珠子不能是同一种颜色,求当有n个珠子的时候有几种染色方案 题解 表示dp[i][j][k ...
- 最长上升子序列(LIS) dp学习~3
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1087 Super Jumping! Jumping! Jumping! Time Limit: 200 ...
- Choose the best route(最短路)dijk
http://acm.hdu.edu.cn/showproblem.php?pid=2680 Choose the best route Time Limit: 2000/1000 MS (Java/ ...
- SpringMVC框架学习笔记(3)——controller配置汇总
1.通过URL对应bean <!-- 配置handlerMapper 映射器 --> <bean class="org.springframework.web.servle ...
- md5加密以及可逆的加密解密算法
md5加密 package gov.mof.fasp2.gcfr.adjustoffset.adjust; import java.security.MessageDigest; public cla ...
- SDP(2):ScalikeJDBC-Connection Pool Configuration
scalikeJDBC可以通过配置文件来设置连接池及全局系统参数.对配置文件的解析是通过TypesafeConfig工具库实现的.默认加载classpath下的application.conf,app ...
- Union用法及说明:
Union是用户合并多个select结果集的操作符,需要注意的是:select语句需要有相同的列数,类似的数据类型,且列的顺序相同,另外,UNION 结果集中的列名总是等于 UNION 中第一个 SE ...
- thinkPHP内置字符串截取msubstr函数用法详解
作者:陈达辉 字体:[增加 减小] 类型:转载 时间:2016-11-15 我要评论 这篇文章主要介绍了thinkPHP内置字符串截取函数用法,结合实例形式分析了thinkPHP内置的字符串截取函数功 ...