关于smarty最直观的感受就是分离了页面中html和php的代码,页面不再混乱,很清晰了……

smarty->assign();//注册

smarty->display();//加载模板

除了老师给的表,kemu,nandu,type都建了表格,便于使用

main.php

<?phpinclude("./init.inc.php");//加载配置文件
//echo str_replace("\\","/",dirname(__FILE__))."/";
include("ChaXun.class.php");//加载类
$db=new ChaXun();
$sql="select * from timu";
$attr=$db->Query($sql);
//var_dump($attr);$smarty->assign("shuju",$attr);//将要注册内容给smarty
$smarty->display("main.html");

main.html

<html>
<head>
<meta charset="utf-8" />
</head><body>
<h1>主页面</h1>
<table width="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td>题目名称</td>
<td>答案</td>
<td>所属科目</td>
<td>难度</td>
<td>题目类型</td>
<td>操作</td>
</tr>
<{foreach $shuju as $v}>//遍历smarty传过来的$shuju,这里使用foreach要注意结束foreach
<tr>
<td><{$v[1]}></td>
<td><{$v[2]}></td>
<td><{$v[3]}></td>
<td><{$v[4]}></td>
<td><{$v[5]}></td>
<td><a href="delete.php?code=<{$v[0]}>">删除</a>&nbsp;&nbsp;<a href="update.php?code=<{$v[0]}>">更改</a></td>
</tr><{/foreach}>
</table>
<a href="add.php">添加数据</a></body>
</html>

add.php

<?php
include("./init.inc.php");
//echo str_replace("\\","/",dirname(__FILE__))."/";
include("ChaXun.class.php");
$db=new ChaXun();
$sqlkm="select * from kemu";
$akm=$db->Query($sqlkm);$sqlnd="select * from nandu";
$and=$db->Query($sqlnd);$sqltp="select * from type";
$atp=$db->Query($sqltp);$smarty->assign("kemu",$akm);
$smarty->assign("nandu",$and);
$smarty->assign("type",$atp);
$smarty->display("add.html");

add.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="addchuli.php" method="post">
<div>题目名称:<input type="text" name="name" /></div><br /><div>请输入选项A:<input type="text" name="A" /></div>
<div>请输入选项B:<input type="text" name="B" /></div>
<div>请输入选项C:<input type="text" name="C" /></div>
<div>请输入选项D:<input type="text" name="D" /></div><br /><div>题目答案:<input type="text" name="daan" /></div><br />
<div>所属科目:<select name="kemu"><{foreach $kemu as $v}><option value="<{$v[0]}>"><{$v[1]}></option><{/foreach}></select></div><br /><div>难度:<select name="nandu"><{foreach $nandu as $v}><option value="<{$v[0]}>"><{$v[1]}></option><{/foreach}></select></div><br /><div>题目类型:<select name="leixing"><{foreach $type as $v}><option value="<{$v[0]}>"><{$v[1]}></option><{/foreach}></select></div><br /><div><input type="submit" value="添加数据"/></div></form>
</body>
</html>

addchuli.php

<?php
include("ChaXun.class.php");
$db=new ChaXun();$name=$_POST["name"];
$daan=$_POST["daan"];
$kemu=$_POST["kemu"];
$nandu=$_POST["nandu"];
$type=$_POST["leixing"];$A=$_POST["A"];
$B=$_POST["B"];
$C=$_POST["C"];
$D=$_POST["D"];$sqltm="insert into timu values('','{$name}','{$daan}','{$kemu}','{$nandu}','{$type}')";
if($db->Query($sqltm,1))
{    $id=$db->conn->insert_id;$sqlA="insert into xuanxiang values('','{$A}','A','{$id}')";$aA=$db->Query($sqlA,1);$sqlB="insert into xuanxiang values('','{$B}','B','{$id}')";$aB=$db->Query($sqlB,1);$sqlC="insert into xuanxiang values('','{$C}','C','{$id}')";$aC=$db->Query($sqlC,1);$sqlD="insert into xuanxiang values('','{$D}','D','{$id}')";$aD=$db->Query($sqlD,1);header("location:add.php");
}
else
{echo"添加失败";
}

delete.php

<?php
include("ChaXun.class.php");
$db=new ChaXun();$code=$_GET["code"];$sql="delete from timu where code='{$code}'";
$db->Query($sql,1);$sqlxx="delete from xuanxiang where timu='{$code}'";
$db->Query($sqlxx,1);header("location:main.php");

update.php

<?php
include("./init.inc.php");
//echo str_replace("\\","/",dirname(__FILE__))."/";
include("ChaXun.class.php");
$db=new ChaXun();
$code=$_GET["code"];$sql="select * from timu where code='{$code}'";
$atm=$db->Query($sql);$sqlxx="select * from xuanxiang where timu='{$code}'";
$axx=$db->Query($sqlxx);$sqlkm="select * from kemu";
$akm=$db->Query($sqlkm);$sqlnd="select * from nandu";
$and=$db->Query($sqlnd);$sqltp="select * from type";
$atp=$db->Query($sqltp);$smarty->assign("type",$atp);
$smarty->assign("nandu",$and);
$smarty->assign("kemu",$akm);
$smarty->assign("xx",$axx);
$smarty->assign("timu",$atm);
$smarty->display("update.html");

updatechuli.php

<?phpinclude("ChaXun.class.php");
$db=new ChaXun();$code=$_GET["code"];
$name=$_POST["name"];
$daan=$_POST["daan"];
$kemu=$_POST["kemu"];
$nandu=$_POST["nandu"];
$type=$_POST["leixing"];
//这里也可以先删除清空所有,再insert into 也可以
$sql="update timu set name='{$name}',daan='{$daan}',kemu='{$kemu}',nandu='{$nandu}',type='{$type}' where code='{$code}'";//var_dump($db->Query($sql,1));
if($db->Query($sql,1))
{header("location:main.php");
}
else
{echo"更改失败";
}

转载于:https://www.cnblogs.com/nannan-0305/p/5560959.html

smarty引擎之练习相关推荐

  1. php ci框架 模板引擎,详解CodeIgniter框架实现的整合Smarty引擎DEMO

    CodeIgniter框架实现的整合Smarty引擎DEMO示例 本文实例讲述了CodeIgniter框架实现的整合Smarty引擎.分享给大家供大家参考,具体如下: Smarty的模板机制很强大,一 ...

  2. 写一个迷你版Smarty模板引擎,对认识模板引擎原理非常好(附代码)

    前些时间在看创智博客韩顺平的Smarty模板引擎教程,再结合自己跟李炎恢第二季开发中CMS系统写的tpl模板引擎.今天就写一个迷你版的Smarty引擎,虽然说我并没有深入分析过Smarty的源码,但是 ...

  3. php模板引擎smarty,[PHP]模板引擎Smarty介绍

    三.可能遇到的问题 在SMARTY的 官方网站上,有详尽的用户手册,可以选择在线HTML和PDF格式的版本.这里就不再涉及手册上已有的内容,只是把初次使用可能遇到的问题做个解释. 第一个问题就很要命: ...

  4. Smarty模板引擎和MVC设计模式

    Smarty模板引擎 一.什么是smarty? smarty是一个使用php写出来的模板php模板引擎,它提供了逻辑与外在内容的分离 目的:使用户界面和业务数据的代码分离 smarty 第三方的类库 ...

  5. php smart模板,PHP 模版引擎Smarty介绍

    用PHP实现MVC开发模式的逻辑层和表示层有多种模板引擎可供选择,但是官方引擎SMARTY诞生后,选择就有了变化.它的理念和实现都是相当前卫的.本文主要讨论SMARTY之于其他模板引擎的不同特点,简要 ...

  6. PHP 模板引擎SMARTY 原理

    一.MVC需要模板 MVC最早是在SmallTalk语言的开发过程中总结出的一种设计模式,MVC分别代表了"模型"."视图"和"控制",目的 ...

  7. smarty模板引擎--php高级最详细教程

    Smarty(模板引擎) 原创 一.什么是模板引擎? Smarty是一个php模板引擎.更准确的说,它分开了逻辑程序和外在的内容,提供了一种易于管理的方法.可以描述为应用程序员和美工扮演了不同的角色, ...

  8. php smarty 原理,php模板原理PHP模板引擎smarty模板原理浅谈

    mvc是开发中的一个伟大的思想,使得开发代码有了更加清晰的层次,让代码分为了三层各施其职.无论是对代码的编写以及后期的阅读和维护,都提供了很大的便利. 我们在php开发中,视图层view是不允许有ph ...

  9. php模板技术smarty,PHP模板技术Smarty

    基本信息 讲师: 高洛峰 时长:60分钟 集数:9 每集定价:20 元 描述: 如果你正在设计一个交互式的网站,你一定会关注两个主要的问题,就是界面美工和应用程序.在大多数的项目组中,开发一个Web程 ...

最新文章

  1. 苹果向App Analytics添加新的指标和特性
  2. 使用HAproxy为阿里中间件做负载均衡。
  3. Linux系统下的DDOS***防范
  4. MongoDB学习笔记一ID自增长
  5. 浅析Memcache和Redis
  6. Spring Aop总结
  7. 【数据结构与算法】链表倒序输出算法
  8. About static contructor API changes in cocos2d-...
  9. UE中使用正则表达式的一些技巧
  10. anaconda 清华镜像及对应下载
  11. python ctp接口_GitHub - keli/ctp-python: 穿透式监管版本CTP接口的Python封装
  12. 20155313 杨瀚 《网络对抗技术》实验三 免杀原理与实践
  13. 哪几种MM最受男孩喜欢?(组图)
  14. SQL函数入门--统计函数+分组函数
  15. python二次函数_python数据分析之曲线拟合:二次函数拟合
  16. python之dlib使用摄像头实时检测人脸
  17. 如何提取视频中的音频?自用方法介绍
  18. 7-29 二分法求多项式单根
  19. Java Comparator使用指南 ---- 看这一篇就够了
  20. php写商城,小白学习使用Thinkphp5写一个商城项目

热门文章

  1. 刷新本地的DNS缓存数据
  2. zoj 3811 untrusted patrol
  3. 【Java心得总结六】Java容器中——Collection
  4. VS2010 自动化整理代码(1)--- VS正则表达替换 PK Vim
  5. linux配置4g网络命令_树莓派移动网络连接(配置4G网卡)
  6. python多分支结构实例_JS优化多分支结构(经典)
  7. python个人收支管理系统相关题目_练手题:计算人均付费(SQLPython)
  8. 将数据流链接到加密转换的流CryptoStream 类
  9. HDU 1999 不可摸数
  10. 让程序结果在屏幕上暂停一段时间