模板预览问题解决思路

by pxz


发布于: 2013-12-23 所属分类: php 后端 标签:  131


<p>1 . 点击预览的时候, 设置cookie previewtplid = x<br> 问题, 谷歌,ff 关闭浏览器后cookie不消失</p> <p>2 . 用session, 问题同上</p> <p>3 . 用$_GET + 来源网页:</p> <p>点击预览时, 传递get参数<br>预览页判断是否预览模式方法:<br>1). 分析当前页的get参数<br>2). 分析来源页的get参数<br>上面其中一个存在预览参数, 则为预览模式, 如果是通过分析来源页得出的结果, 需要在当前页url加预览get参数进行跳转(关键)<br>问题解决</p> <p>附php代码:</p> <pre><code> /** * 获取预览模板id, 如通过分析来源页地址得到的预览模式, 则进行跳转 * * @return int */ protected function getpreviewtplid() { if (isset($_GET['previewtplid']) && intval($_GET['previewtplid'])>0) { return intval($_GET['previewtplid']); } else { if ($_SERVER['HTTP_REFERER'] != '') { $urlinfo = parse_url($_SERVER['HTTP_REFERER']); $gets = array(); $tmparr = explode('&', $urlinfo['query']); foreach ($tmparr as $v) { $tmparr1 = explode('=', $v); $gets[$tmparr1[0]] = $tmparr1[1]; } if (isset($gets['previewtplid']) && intval($gets['previewtplid'])>0) { //跳转至预览地址 $gourl = $_SERVER['REQUEST_URI'] ; $gourl .= strpos($_SERVER['REQUEST_URI'], '?') == false ? '?' : ''; $gourl .= 'previewtplid=' . $gets['previewtplid']; MiscFunc::urljump($gourl); exit; } } } return 0; } </code></pre>

发表评论

暂无评论

搜索
用户登陆