thinkphp 模板调用数据
我自己写了个简单的模板是这样的
<!DOCTYPE html>
<html>
<head>
<style>
div
{
width:230px;
height:230px;
margin:10px; /* div间距 */
text-align:center; /*文字水平居中*/
vertical-align: middle;
line-height:230px; /*line-height must be equal to height 文字垂直居中,与上一行配合与整体高度配合,垂直居中*/
float:left; /*div水平分布排列、浮动靠左排列 */
} div:hover/*鼠标指针响应事件*/
{
animation:myfirst 5s; /* 动画开启、时间为5秒 */
-webkit-animation:myfirst 5s; /* Safari 和 Chrome */
} @-webkit-keyframes myfirst /* Safari and Chrome *//*动画流程*/
{
from {background:red; -webkit-transform: rotateY(180deg);} /*红色、围绕y轴旋转180度 */
to {background:yellow; -webkit-transform: rotateY(360deg);}
} </style>
</head> <body> <div style="background-color:#FF8F59;onclick="window.open">
<a href="http://www.baidu.com" target="_blank">双重定义打开超链接,为什么?
</a>
</div> <div style="background-color:#6FB7B7;onclick="window.open('www.baidu.com')">
<a href="http://www.baidu.com" target="_blank">百度</a>
</div> <div style="background-color:#8600FF;onclick="window.open">
<a href="http://www.baidu.com" target="_blank">百度</a>
</div> <div style="background-color:#FFFF93 ;onclick="window.open">
<p><a href="http://v.youku.com/">初级教程</p>
</div> <div style="background-color:#FFD2D2;onclick="window.open">
<p><a href="http://v.youku.com/">初级教程</p>
</div> <div style="background-color:#E0E0E0;onclick="window.open">
<p><a href="http://v.youku.com/">初级教程</p>
</div> <div style="background-color:#FAF4FF;onclick="window.open">
<p><a href="http://v.youku.com/">初级教程</p>
</div> <div style="background-color:#E8E8D0;onclick="window.open">
<p><a href="http://v.youku.com/">初级教程</p>
</div> <div style="background-color:#EBD3E8;onclick="window.open">
<p><a href="http://v.youku.com/">初级教程</p>
</div> <div style="background-color:#CEFFCE;onclick="window.open">
<p><a href="http://v.youku.com/">初级教程</p>
</div> </body>
</html>
我想用thinkPHP把数据添加进来
该怎么办呢。。。
我在看模板引擎手册
先配置一下。。。
$this->display();
看下最基础的东西吧,了解一下它的大概规则
控制器里加入
$name = 'ThinkPHP'; $this->assign('name',$name);
显示页内把{$name}找个地方塞进去
刷新一下
第二个超链接的标签变成thinkphp了
遍历输出
应该是它了
怎么把数据加入进去呢。。。
百度一下
还是看下Volist标签吧
在Action中首先对模版赋值:已经习惯控制器了,至少应该能接触到数据库,这是示范代码
- $User = M('User');
- $list = $User->select();
- $this->assign('list',$list);
大概意思好像是
user的值是从数据库user里获取的
list的值是通过数据库查询得到的
那么,显示出list的值,list是个列表
我的数据库是confluence,第一行语法得改成
$User = M('admin');
我好像没有list,我看看。。。
不知道div行不行,先改下试试
$div = $User->select();
$this->assign('div',$div);
模板里应该添加成
- <volist name="div" id="vo">
- {$vo.admin}
- </volist>
试一下

是这样的一个效果
已经能从数据库里调出循环的数据了,非常好
思路应该是,让调出的数据等于链接标题就好了,再循环一下
<body>
<foreach name="div" item="vo">
<div style="background-color:#FF8F59;onclick="window.open">
<a href="http://www.baidu.com" target="_blank"> {$vo.admin}
</a>
</div> </foreach> </body>
减少了好多的代码量啊。。。
颜色改一下
随机的最好

background-color:red
控制器里看看能不能赋值给red,如果能,就可以把它改成变量了吧。。。
$name = 'red';
$this->assign('name',$name);
模板改为
background-color:{$name}
现在模板的颜色可以用控制器控制了
怎么把name变成随机函数呢。。。
定义一下red和blue,但是模板中的随机函数接收不到
{:mt_rand(1,5)}————这行代码会被解析成<?php echo mt_rand(1,5);?>
简单的东西搞复杂了就不好了啊。。。
光一个html看来很无力啊。。。
就这样吧。。。不浪费时间了。。。
thinkphp 模板调用数据的更多相关文章
- thinkphp模板调用函数用法
注意:自定义函数要放在项目应用目录/common/common.php中. 这里是关键. 模板变量的函数调用格式为: {$varname|function1|function2=arg1,arg2,# ...
- thinkphp模板中foreach循环没数据的错误解决
从控制器方法中$this->assign();函数将值传递给html模板 但是模板不显示数据,直接出来的是代码,效果就和html中写了php代码不能解析一样. 原来是我将thinkphp框架的引 ...
- thinkPHP 输出及其模板调用(三)
原文:thinkPHP 输出及其模板调用(三) ThinkPHP 的输出(重点) a.通过 echo 等PHP原生的输出方式在页面中输出 b.通过display方法输出(thinkphp\Home\L ...
- (转) ThinkPHP模板自定义标签使用方法
这篇文章主要介绍了ThinkPHP模板自定义标签使用方法,需要的朋友可以参考下 转之--http://www.jb51.net/article/51584.htm 使用模板标签可以让网站前台开发 ...
- [转]thinkphp 模板显示display和assign的用法
thinkphp 模板显示display和assign的用法 $this->assign('name',$value); //在 Action 类里面使用 assign 方法对模板变量赋值,无论 ...
- thinkphp模版调用函数方法
原文:thinkphp模版调用函数方法 {变量|函数1|函数2|函数3=参数1,参数2,参数3,###} ###为第4个参数,代表变量替换为第4个参数 举例: {$username|substr=0, ...
- Thinkphp模板简单入门
Thinkphp模板概述: ThinkPHP内置了一个基于XML的性能卓越的模板引擎,这是一个专门为ThinkPHP服务的内置模板引擎,使用了XML标签库技术的编译型模板引擎,支持两种类型的模板标签, ...
- thinkphp模板常用的方法
thinkphp模板我是看了3.2的文档,对里面的东西过了一遍,然后在写到需要用到模板的东西的时候就有印象,有的能直接回顾,但是有的就可能只知道有这个东西,但是不知道怎么用,所以就重新查手册,这个的话 ...
- 数字IC设计入门必备——VIM自定义模板调用与VCS基本仿真操作示例
一.前言 毕业论文答辩结束,闲下来写篇文章.芯片研发人员都在Linux系统下借助各种EDA工具和代码语言完成工作,因此提高代码开发效率,熟练运用开发工具是十分必要的.本文讲述VIM编辑神器的veril ...
随机推荐
- ArcEngine 异常:field is not editable
字段不可编辑. Access数据库默认第一个字段为ID字段,不可修改.所以,在新建字段时,第一个字段为ObjectID字段,如果没有建立该字段,则把另外的字段作为 不可修改的ID字段,造成field ...
- Geronimo应用服务器和MySQL数据库服务器
就是Web 2.0的全部,尽管该术语出现才几乎一年的时间,但现在好像只有烹饪杂志还没有加入到讨论Web 2.0未来出路的行列中.自从出现了里程碑式的文章"What Is Web 2.0:De ...
- GridView 下拉搜索
/** * 下拉筛选 * @column string 字段 * @value mix 字段对应的值,不指定则返回字段数组 * @return mix 返回某个值或者数组 */ public stat ...
- PHP 对象和引用总结
PHP 中使用 简单变量 和 对象 时的区别: ① 很多数据类型都可以写时复制(copy-on-write),例: <?php $a = 'test1'; $b = $a; $b = 'test ...
- PHP 错误与异常 笔记与总结(4)通过 trigger_error 触发 PHP 错误
[错误抑制符@] 除了 php.ini 中 error_reporting 和 display_errors 的设置.error_reporting() 函数.ini_set() 函数 外,还可以使用 ...
- DirectX 基础学习系列6 字体
DIRECTX9自带ID3DXFONT类 内部调用GDI的接口,效率一般,但能够处理一些复杂的字体 HRESULT D3DXCreateFontIndirect( LPDIRECT3DDEVICE9 ...
- markdown 书写表格
Tables Are Cool col 3 is right-aligned $1600 col 2 is centered $12 zebra stripes are neat $1 Refs ma ...
- js里面的等于号--
一个是赋值等于号,二个是对比等于号,那么三个等于号是什么用的呢 有时候会看到在判断两个对象是否相等的时候使用了三个等号(===),它和两个等号(==)有什么区别呢?简单来说就是使用“==”时,如果 ...
- embody the data item with the ability to control access to itself
Computer Science An Overview _J. Glenn Brookshear _11th Edition Such communication needs have long b ...
- Python文件方法
打开文件 使用open函数,语法格式为:open( name[, mode[, buffering]]),name为打开文件名,mode为打开文件方式,buffering控制文件的缓冲. mode可选 ...