采用smarty开发的小论坛的学习总结

采用smarty开发的一个个人小论坛

1)include 公共文件 最好使用include引入,

例如:页面的header 或者图片,还有底部的显示

一般是公共的

2)数据库的查询 插入 更新 删除

执行之后的提示 使用:

控制器:例如

$sql="insert into topics(bid,title,content,post_time) values ('$bid','".$_POST['title']."','".$_POST['content']."',now())";

$query->query($sql);

$smarty->assign('ok',1);

V输出模板文件上使用:

{if $ok}发表成功!

{else}

.........

{/if}

3)客户端输入数据的检测和判断

最佳的使用是js判断 原因是分工明确,易于维护,这是在客户端做的判断

其次是在服务器上面判断,这个成本高,容易降低服务器效率,但是判断是准确度是最高的

3)跨页面数据的查询

使用session保存机制,在夸页面的事实 session具有临时保存的功能

在控制器里面判断管理员是否登录, 还有在模版文件输出使用:{$smarty.session.username}

4)获取数据;

POST主要用于表单的提交的数据,GET主要是获得URL的数据, 例如对某条信息删除 修改 选择 都可以通过get获得id

5)URL的解析

常规:<a href="edit.php?id={$item.id}">修改</a>

<a href="delete.php?id={$item.id}">删除</a>

这个样的话需要写2个模版

常用URL;

<a href="ad_board.php?action=edit&id={$result[u].id}"><b>修改</b></a>

<a href="ad_board.php?action=del&id={$result[u].id}" )">删除</a>

控制器:----可以根据action的不同,调用不同的方法,在一个页面写 减收页面数量,在$_POST['submit']获得表单

//删除板块

if($_GET['action']=='del'&&isset($_GET['id'])){

$id=$_GET['id'];

$sql="delete from boards where id=".$id."";

// echo $sql;

$query->query($sql);

$smarty->assign('ok',1);

$smarty->display("ad_userdel.tpl");

}

//修改板块信息

if($_GET['action']=='edit'&&isset($_GET['id'])){

$sql="select * from boards where id='".$_GET['id']."'";

$q=$query->query($sql);

$res=$query->fetch_array($q);

$smarty->assign('info',$res);

if(isset($_POST['submit'])){

$sql="update boards set board_name='".$_POST['board_name']."' , board_desc='".$_POST['board_desc']."',build_time=now() where id='".$_POST['id']."'";

// echo $sql;

$query->query($sql);

$smarty->assign('ok',1);

}

$smarty->display('ad_boardedit.tpl');

}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值