先来看怎么把数据库的列表全都显示出来

还是要先建一个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模板做数据实现修改、分页等功能的更多相关文章

  1. smarty模板做人员表信息删除,修改 里面的性别单选按钮民族下拉,另外登录进去可以显示姓名

    首先登录进去可以显示姓名 smarty模板做人员表信息删除,删除的时候有提示框确定删除吗. 修改 里面的性别单选按钮,要修改谁有默认选中,用了变量调节器 民族位置做下拉,用<{foreach}& ...

  2. 用smarty模板做的登录

    用smarty模板做的登录和之前我们用php做的登录区别不大 首先要新建一个php文件 一般php文件,要放在这个文件里 它对应的html文件,要放在这个目录里 下面先来做php文件 要先引入入口文件 ...

  3. 无插件,无com组件,利用EXCEL、WORD模板做数据导出(一)

    本次随笔主要讲述着工作中是如何解决数据导出的,对于数据导出到excel在日常工作中大家还是比较常用的,那导出到word呢,改如何处理呢,简单的页面导出问题应该不大,但是如果是标准的公文导出呢,要保证其 ...

  4. smarty模板里实现缓存。

    smarty模板里实现缓存.分页缓存在任何里都可以用 我用了三个类 include("../init.inc.php");//模板入口类 include("../DBDA ...

  5. smarty模板调数据库并做添加删除修改和分页

    smarty模板只要就是实现分离效果所以每个功能都需要两个页面一个是HTML  和 PHP  两部分组成 使用smarty模板要在main文件夹下面创建login.php文本,要用smarty模板首先 ...

  6. smarty模板基础3 *缓存数据*

    缓存数据,这个并不是暂存的缓存,而是写入了内存的缓存 通过一个例子来书写:缓存数据 一.书写php和html页面的基本功能 既然是用smarty模板,那么前端和后端要分开写了 (1)php页面 < ...

  7. smarty模板基础----缓存数据

    缓存数据,这个并不是暂存的缓存,而是写入了内存的缓存 通过一个例子来书写:缓存数据 一.书写php和html页面的基本功能 既然是用smarty模板,那么前端和后端要分开写了 (1)php页面 1 2 ...

  8. Smarty模板的逻辑运算符号稍微做一下总结

    对Smarty模板的逻辑运算符号稍微做一下总结,以备后用. eq    equal : 相等neq    not equal:不等于gt    greater than:大于lt    less th ...

  9. Smarty模板技术学习(二)

    本文主要包括以下内容 公共文件引入与继承 内容捕捉 变量调剂器 缓存 Smarty过滤器 数据对象.注册对象 与已有项目结合 公共文件引入与继承 可以把许多模板页面都用到的公共页面放到单独文件里边,通 ...

随机推荐

  1. 得到css style

    //根据ID返回dom元素 2 var $ = function(id){return document.getElementById(id);} 3 //返回dom元素的当前某css值 4 var ...

  2. 如何在windows下载和安装Apache

    进入apache服务器官网http://httpd.apache.org/,这里我们以下载稳定版的httpd 2.4.25为例,点击"Files for Microsoft Windows& ...

  3. --@angularJS--简单的带嵌套的指令demo

    <!DOCTYPE HTML><html ng-app="app"><head>    <title>custom-directiv ...

  4. js实现数组去重并且显示重复的元素和索引值

    var arr=["a","b","c","d","c","b","d ...

  5. 微信小程序教程(第三篇)

    小程序的架构及实现机制,信道服务及会话管理 小程序架构及实现机制 小程序并不是 H5 应用,而是更偏向于传统的 CS 架构,它是基于数据驱动的模式,一切皆组件(视图组件).所以建议在开发小程序时不要以 ...

  6. 初探Lambda表达式/Java多核编程【0】从外部迭代到内部迭代

    开篇 放假前从学校图书馆中借来一本书,Oracle官方的<精通Lambda表达式:Java多核编程>. 假期已过大半才想起来还没翻上几页,在此先推荐给大家. 此书内容及其简洁干练,如果你对 ...

  7. 成小胖学习ActiveMQ·基础篇

    过了个春节,回到公司的成小胖变成了成大胖.但是你们千万别以为他那个大肚子里面装的都是肥肉,里面的墨水也多了不少嘞,毕竟成小胖利用春节的半个月时间专心学习并研究了 ActiveMQ,嘿嘿……这不,为了检 ...

  8. block和delegate的区别

    代理  可读性高  大部分可以属性 block   写的代码少 一般作为参数通知   占用资源 无论是block还是delegate模式本质上都是回调,使用block,其优点是回调的block代码块直 ...

  9. CSS3知识点整理(五)----响应式设计及其他属性

    介绍Media Queries与Responsive设计以及外轮廓属性.resize属性.CSS3生成内容等 学会如何使用CSS3中的Media Queries模块来让一个页面适应不同的终端(或屏幕尺 ...

  10. RejectedExecutionException 分析

    当往一个固定队列ArrayBlockingQueue 不停的提交任务时,会发生什么? 请看如下代码 private static final int QUEUE_SIZE = 20; private ...