用smarty模板做数据实现修改、分页等功能
先来看怎么把数据库的列表全都显示出来
还是要先建一个php文件,还有html文件,都存到相应的目录下
php文件中
<?php
include("../init.inc.php");
include("../DBDA.php");
$db = new DBDA(); $sql = "select * from nation";
$arr = $db->Query($sql); $smarty->assign("shuju",$arr);
$smarty->display("main.html");
html文件中
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head> <body>
<h1>数据列表</h1> <table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr>
<td>代号</td>
<td>名称</td>
<td>操作</td> </tr>
<{foreach $shuju as $v}>
<tr>
<td><{$v[0]}></td>
<td><{$v[1]}></td>
<td>操作</td> </tr>
<{/foreach}> </table> </body>
</html>
运行后

列表显示成功
再来做别的操作
可以在操作那里加一个删除和修改,删除和之前做的php的一样,就不在这里写了,做个修改的操作
还是在那个main.html文件中

不写删除页面了,做一个修改页面
修改页面是需要打到前端显示的,所以还是要建两个页面
一个php一个对应的html页面
xiugai.php文件中
<?php
include("../init.inc.php");
include("../DBDA.php");
$db = new DBDA(); $code= $_GET["code"]; $sql = "select * from nation where code='{$code}'";
$arr= $db->Query($sql); $smarty->assign("nation",$arr[0]);
$smarty->display("xiugai.html");
根据传过来的code来找它的数据
然后把它的数据先放到一个数组
打到xiugai.html显示
html文件中
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head> <body>
<h1>修改页面</h1>
<form action="update.php" method="post">
<div>代号:<input type="text" name="code" value="<{$nation[0]}>" /></div>
<div>名称:<input type="text" name="name" value="<{$nation[1]}>" /></div>
<input type="submit" value="修改" /> </form> </body>
</html>
从main.php开始运行

点击修改,点n001的吧

它原来的数据默认显示在这个页面
再点n005试一试

它对应的数据也在默认显示
运行成功,接下来的页面就和php的一样了
只要能让用户看到的页面,都得分成两块,一块php的,一块前端的
实现前后分离
做一个分页查询
main.php文件中
<?php
include("../init.inc.php");
include("../DBDA.php");
$db = new DBDA();
$sall="select count(*) from nation";
$zts=$db->StrQuery($sall); include("../page.class.php");
$page = new Page($zts,5); $sql = "select * from nation ".$page->limit;
$arr = $db->Query($sql); $smarty->assign("fenye",$page->fpage());
$smarty->assign("shuju",$arr);
$smarty->display("main.html");
要注意这里

如果不打空格的话就会报错
然后html文件中,输出一下分页

这样就可以了,运行一下

分页运行成功
再加个查询功能
html文件中,比较简单点,加一个文本框和按钮

php文件中
<?php
include("../init.inc.php");
include("../DBDA.php");
$db = new DBDA(); $tj = " 1=1 ";
if(!empty($_GET["name"]))
{
$n = $_GET["name"];
$tj = " name like '%{$n}%' ";
} $ztj= "where {$tj}";
$sall="select count(*) from nation ".$ztj;
$zts=$db->StrQuery($sall); include("../page.class.php");
$page = new Page($zts,5); $sql = "select * from nation ".$ztj.$page->limit;
$arr = $db->Query($sql); $smarty->assign("fenye",$page->fpage());
$smarty->assign("shuju",$arr);
$smarty->display("main.html");
这里要注意不要忘了把总条件拼上
运行后

然后输入条件查询

点击查询

然后可以再试一个

点击查询

运行成功
用smarty模板做数据实现修改、分页等功能的更多相关文章
- smarty模板做人员表信息删除,修改 里面的性别单选按钮民族下拉,另外登录进去可以显示姓名
首先登录进去可以显示姓名 smarty模板做人员表信息删除,删除的时候有提示框确定删除吗. 修改 里面的性别单选按钮,要修改谁有默认选中,用了变量调节器 民族位置做下拉,用<{foreach}& ...
- 用smarty模板做的登录
用smarty模板做的登录和之前我们用php做的登录区别不大 首先要新建一个php文件 一般php文件,要放在这个文件里 它对应的html文件,要放在这个目录里 下面先来做php文件 要先引入入口文件 ...
- 无插件,无com组件,利用EXCEL、WORD模板做数据导出(一)
本次随笔主要讲述着工作中是如何解决数据导出的,对于数据导出到excel在日常工作中大家还是比较常用的,那导出到word呢,改如何处理呢,简单的页面导出问题应该不大,但是如果是标准的公文导出呢,要保证其 ...
- smarty模板里实现缓存。
smarty模板里实现缓存.分页缓存在任何里都可以用 我用了三个类 include("../init.inc.php");//模板入口类 include("../DBDA ...
- smarty模板调数据库并做添加删除修改和分页
smarty模板只要就是实现分离效果所以每个功能都需要两个页面一个是HTML 和 PHP 两部分组成 使用smarty模板要在main文件夹下面创建login.php文本,要用smarty模板首先 ...
- smarty模板基础3 *缓存数据*
缓存数据,这个并不是暂存的缓存,而是写入了内存的缓存 通过一个例子来书写:缓存数据 一.书写php和html页面的基本功能 既然是用smarty模板,那么前端和后端要分开写了 (1)php页面 < ...
- smarty模板基础----缓存数据
缓存数据,这个并不是暂存的缓存,而是写入了内存的缓存 通过一个例子来书写:缓存数据 一.书写php和html页面的基本功能 既然是用smarty模板,那么前端和后端要分开写了 (1)php页面 1 2 ...
- Smarty模板的逻辑运算符号稍微做一下总结
对Smarty模板的逻辑运算符号稍微做一下总结,以备后用. eq equal : 相等neq not equal:不等于gt greater than:大于lt less th ...
- Smarty模板技术学习(二)
本文主要包括以下内容 公共文件引入与继承 内容捕捉 变量调剂器 缓存 Smarty过滤器 数据对象.注册对象 与已有项目结合 公共文件引入与继承 可以把许多模板页面都用到的公共页面放到单独文件里边,通 ...
随机推荐
- Grunt那些事
1.第一步当然是先安装好nodejs里面的npm包管理器咯,若还不知道怎么安装请参考nodejs那些事里面的安装步骤 2.node安装完后,就安装grunt-CLI,如果nodejs直接安装在系统默认 ...
- 2.1. 托管对象模型是什么(Core Data 应用程序实践指南)
托管对象模型是一种数据结构.在这里,数据结构.纲要.对象图.数据模型.托管对象模型这些术语是一个意思.它们是对同一个东西不同场景的描述.比如,对Core Data 而言是托管对象模型,对设计器来说是对 ...
- 编译安装mysql-server5.6.32手记
起因: CentOS内置源里面默认安装的Mysql-server太老旧,不支持一些新方法的调用,需要重新安装一个新版本 老版本里面有数据,不想卸载,想保留库和软件本身 机器上没有运行Docker,而且 ...
- LCA 倍增
最近公共祖先 对于有根树T的两个结点u.v,最近公共祖先LCA(T,u,v)表示一个结点x,满足x是u.v的祖先且x的深度尽可能大. #include<cstdio> #include&l ...
- oracle与sqlserver利用函数生成年月日加流水号
最近在做oracle相关的项目,刚接触oracle,与sqlserver语法上还是有区别的 sqlserver : 示例:FX+当前年月日+00001 如下图流水号实力所示 原理: 首先 'FX'是固 ...
- java打包jar,war,ear包的作用、区别
java的打包jar,war,ear包的作用,区别,打包方式. a) 作用与区别 i. jar: 通常是开发时要引用通用(JAVA)类,打成包便于存放管理 ii. war ...
- vs生成配置release自动恢复成debug无法配置的问题
软件为visual studio 2015,右键单个项目选属性,设置“生成配置”release,保存后,再次右键属性,却发现又自动恢复成debug,怎么回事?是无法配置吗?点击生成试试,果然2b了. ...
- Android Studio 提高工作效率的奇技
1.ctrl+f12 ctrl+f12此快捷键可以调出当前文件的大纲,并通过模糊匹配快速跳转至指定的方法.勾选上“show anonymous classes”后其功能相当于Eclipse中的ctrl ...
- 拆开Ceph看队列和线程
作者:吴香伟 发表于 2017/01/08 版权声明:可以任意转载,转载时务必以超链接形式标明文章原始出处和作者信息以及版权声明 我上小学时家离学校很远,家在某某山脚,学校在镇里.每周回家一趟,周五放 ...
- 使用bootstrap table小记(表格组件)
前言 新的一年悄然到来,生活依旧.最近一周大热的赵雷风,一首<成都>,一首<理想>再次把民谣展示在国人面前.歌词着实写的不错. 理想,你今年几岁 你总是诱惑着年轻的朋友 你总是 ...