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 ...
随机推荐
- hdu-acm steps Monkey and Banana
这道题是典型的dp题.首先是数据的处理上,因为每个长方体的3条不同长度的棱都可以作为高,因此一个长方体可以看成3个不同的长方体.从而将数据扩展为3*n,然后将所有的长方体以长度为第一排序条件,宽度为第 ...
- ERROR com.opensymphony.xwork2.interceptor.ParametersInterceptor.error:34 - Developer Notification
We are trying to migrate from Struts 2.2 to Struts 2.3, after getting to run the project I am seeing ...
- jQuery中添加/改变/移除改变CSS样式例子
在jquery中对于div样式操作我们会使用到CSS() removeClass() addClass()方法来操作了,下面我们就整理了几个例子大家一起来看看吧. CSS()方法改变CSS样式 ...
- Nginx 笔记与总结(9)rewrite 重写规则
重写的规则可以放在 serverer 里,也可以放在 location 里. rewrite 规则: 常用的命令有 ① if(条件){} 设定条件,再进行重写 if 语法: if 空格 (条件){ ...
- jedis操作
Jedis jedis = RedisUtil.getJedis(); try { // 向key-->name中放入了value-->minxr jedis.set("name ...
- RadioGroup和ViewPager实现Tab
Activity的布局文件 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" ...
- Pull解析器学习
1, package com.service; import java.io.InputStream; import java.io.OutputStream; import java.util.Ar ...
- 达内培训:php在线端口扫描器
达内培训:php在线端口扫描器 [来源] 达内 [编辑] 达内 [时间]2012-12-21 这个扫描器很简单.就是用了一个数组来定义端口的相关信息,原理就是用fsockopen函数连接,如 ...
- HTML: margin重疊現象的說明
2句話: ①相鄰的兩個普通元素,上下邊距,不是簡單的相加,而是取邊距較大的元素(若相邻的两个普通兄弟元素,它们的margin 值是一样的,则各取两个元素的margin 值的一半.)②关系为父子的两个d ...
- LR动态脚本的处理
在处理SSO修改密码脚本时遇到一个问题,根据用户名的不同,提交请求中数据会不一样.处理此问题,如果经分析用同类型的账号(每个账号含有的子账号类型和数目一致)测试与实际不同类型账号性能没有大的差别,则用 ...