本人新手刚接触php.对于smarty更是少,前面用php写了个页面,简单的用数据库的内容显示用表的方式显示到网页上.
但是问题来了,表越来越多,刷新一下页面每次都会占大部分CPU,发现这样不行,于是搜索到了有关缓存的问题.接着发现了 smarty
这几天也看了不一些例子,和一些视频,自己也做过很多测试,还是不知道如何下手讲数据库表用 smarty模板 显示出来..
表格很简单.如下
数据库表名.my_db
id 名字 性别 年龄 身高 体重 身份证号码 家庭住址 联系电话
1 张三 男 32 173cm 66 100******** 北京市东城区 134*******
2 李四 男 30 178cm 65 100******** 北京市西城区 134*******
3 王五 男 30 179cm 63 100******** 北京市东城区 134*******
4 赵六 男 29 181cm 67 100******** 北京市东城区 186*******
5 小红 女 12 143cm 40 100******** 北京市房山区 无电话
6 小明 男 14 163cm 55 100******** 北京市房山区 无电话
7 小李 男 12 155cm 45 100******** 北京市西城区 无电话
我想要显示的是 按年龄的大小 显示到 网页上但是用smarty我真的不知道如何下手,不知道该怎么写..论坛上也没找到这样的例子应该怎么写,希望会的朋友给我做个式利帮我写一下.非常感谢!!
一下是热心人给出的源码:
- PHP code
//table方法,用来查询数据库 function table(){ //初始化连库函数,这里$conn是之前实例化的pdo globle $conn; //按照条件查询 $sel=$conn->query("select * from my_db order by age"); //返回变量到函数 return $sel->fetchAll(); } $smarty->assign('table',table());
但是 pdo 没用过, 能不能用这样的..
- PHP code
include("smarty_inc.php"); $con = mysql_connect("127.0.0.1","user","123456"); if (!$con) { die('Could not connect: ' . mysql_error()); } //$db=new pdo('mysql:127.0.0.1;mysql','user','123456','true'); mysql_query("set names gbk"); mysql_select_db("test",$con); $result=mysql_query("select * from my_db");
应该怎样改成 然后用这样的方式呈现!
------解决方案--------------------
php文件
- PHP code
<?php include("smarty_inc.php"); $con = mysql_connect("127.0.0.1","user","123456"); if (!$con) die('Could not connect: ' . mysql_error()); mysql_query("set names gbk"); mysql_select_db("test",$con); $result=mysql_query("select * from my_db order by age"); while($row=mysql_fetch_assoc($result)){ $table[]=$row; } $smarty->assign('table',$table);
------解决方案--------------------
前台利用smarty的assign赋值给变量。然后利用smarty的section进行循环显示。