现在我们把首页静态化但是登陆用户这块需要局部处理。处理方法如下::
1、需要在前台配置文件config.php中进行开启静态缓存
静态地址定义方式还有很多 可以参考TP手册
2、运行首页页面会静态化,目录列表中会自动生成一个HTML文件夹下有定义的静态页面文件名
3、用ajax技术实现局部动态【静态化的页面 ajax代码可以照常执行 也就实现了局部动态】
<div id="user1"></div> //设置一个空的div或者随意什么标签 等待赋值
<script>
$(function(){
$.ajax({
url:"{:U('Index/check_login')}",
type:'post',
success:function( res ){
// console.log(res)
if(res != 1){
$("#user1").html("你好,欢迎<span style=\"color:orange;\">" +res+"</span>"+
"<a href=\"{:U('Login/quit')}\" style=\"padding-left:15px;color:gray;\">退出</a>");
}else{
$("#user1").html("<a href=\"{:U('Login/login')}\" target=\"_top\" class=\"h\">亲,请登录</a>" +
"<a href=\"{:U('Login/register')}\" target=\"_top\"> 免费注册</a>");
}
}
});
});
</script>
请求页面
/** 查询用户是否登陆 */
public function check_login(){
$name = $_SESSION['u_name']; //在登陆成功用session存了用户信息
if($name){
$this->ajaxReturn($name);
}else{
$this->ajaxReturn(1);
}
}
效果展示
未登录
登陆后
这样我们的静态化页面局部动态就完成了:) 就算不是使用TP框架实现 其实原理都是一样的