基于SS框架的留言本前台控制器
2012-03-06 11:18
176 查看
备用
<?php /** * Title:Gues.ct.php * Description:前台控制器 * @author:Jiangbin - zhangjb@shengshi.com.cn * Date:2012-2-20 */ require_once($_SERVER["DOCUMENT_ROOT"]."/require/global.fun.php"); _IMPORT_DB("CDSGues_users","abc"); _IMPORT_DB("CDSGues_posts","abc"); class _CCTGues extends CController { var $ip; public function __init() { $this->set_page_base("abc"); return array( _METHOD('index',array(),false,false), _METHOD('add',array(),false,false), _METHOD('search',array("key"),false,false), _METHOD('detail',array("pid"),false,false), ); } function __ready() { $this->ip = $this->GetIP(); $this->page_title = "Guestbook"; _S("page_title", $this->page_title); return true; } function index() { $rt = array(); $rt1 = array(); $cds = new CDSGues_posts(); $count = $cds->count(); $page = _P('page'); $per_page = 5; //每页记录数 $maxpage = ceil($count/$per_page); $page<1 && $page=1; $page>$maxpage && $page=$maxpage; $cds->set_limit($page,$per_page); $cds->set_order_by(array("pid" => "DESC")); $rt = $cds->select(_EQ("parent_id", 0)); //输出父id为0,也就是所有的留言 foreach($rt as $key=>$value) { $v = $value['pid']; $rt1[$v] = $cds->select(_EQ("parent_id", $v)); //留言的回复 } //echo $cds->get_sql(); _S("count",$count); _S("page",$page); _S("per_page",$per_page); _S("rt", $rt); _S("rt1", $rt1); if($_GET['ver']=="php") { $this->set_page(false); $this->warning("php版本".phpversion()); } } /** * @date:2012-2-22 * @description:添加留言 */ function add() { $this->set_page(false); $htmlData = ''; if (!empty($_POST['message'])) { if (get_magic_quotes_gpc()) { $htmlData = stripslashes($_POST['message']); } else { $htmlData = $_POST['message']; } } $data = array ( 'message' => $htmlData, 'parent_id' => '0', ); $cds = new CDSGues_posts(); if($data['message']) { $cds->set_message($data['message']); $cds->set_addtime(date("Y-m-d h:i:s")); $cds->set_addip($this->ip); $cds->set_parent_id($data['parent_id']); $cds->insert(); $this->warning("Insert Success!"); return false; } else { //echo "Insert Fail!"; } } /** * @date:2012-2-23 * @parma: integer $key * @description:搜索留言 */ function search($key) { //$this->set_page(false); $key = trim(_P('key')); //关键字 if($key == "") { $this->warning("请输入关键字!", "/abc/gues/"); return false; } else { $keyword = "'%".$key."%'"; $cds = new CDSGues_posts(); $data = array(); $data = $cds->execsql("SELECT * FROM gues_posts WHERE `message` LIKE ".$keyword); //print_r($data); //echo $cds->get_sql(); //exit(); if(count($data) != 0) { _S("data", $data); } else { $this->error(0, "not found!"); return false; } } return true; } /** * @date:2012-2-24 * @parma: integer $pid * @description:留言详细 */ function detail($pid) { if(!$pid) { $this->error(1, "缺少参数!"); return false; } $bg = new CDSGues_posts(); $bg->set_order_by(array("pid" => 'DESC')); if($bg->select(_EQ("pid", $pid))) { _S('bg', $bg); } } function GetIP() { if ($_SERVER["HTTP_X_FORWARDED_FOR"]) $ip = $_SERVER["HTTP_X_FORWARDED_FOR"]; else if ($_SERVER["HTTP_CLIENT_IP"]) $ip = $_SERVER["HTTP_CLIENT_IP"]; else if ($_SERVER["REMOTE_ADDR"]) $ip = $_SERVER["REMOTE_ADDR"]; else if (getenv("HTTP_X_FORWARDED_FOR")) $ip = getenv("HTTP_X_FORWARDED_FOR"); else if (getenv("HTTP_CLIENT_IP")) $ip = getenv("HTTP_CLIENT_IP"); else if (getenv("REMOTE_ADDR")) $ip = getenv("REMOTE_ADDR"); else $ip = "Unknown"; return $ip; } function error($code, $message) { echo "error:($code) $message"; return false; } private function warning($str, $url = '/abc/gues/'){ echo "<script type='text/javascript'>alert('".$str."');location.href='".$url."';</script>"; return false; } function __finally() { } } ?>
相关文章推荐
- 基于SS框架的留言本后台控制器
- Maven ssm框架 jsp从前台发送数据到控制器报400错误
- JEECG - 基于代码生成器的J2EE智能开发框架 续六: JEECG 前台页面和后台交互讲解
- (转)基于MVC4+EasyUI的Web开发框架形成之旅--基类控制器CRUD的操作
- 基于MVC4+EasyUI的Web开发框架形成之旅--基类控制器CRUD的操作
- angular JS 基于ionic框架 开发移动端项目 实现进入前台 判断用户权限 控制项目UI布局和tab的部门显示和隐藏
- (转)基于MVC4+EasyUI的Web开发框架形成之旅--MVC控制器的设计
- 一个基于 EasyUI 的前台架构(4)主体页面框架收工
- 基于MVC4+EasyUI的Web开发框架形成之旅--MVC控制器的设计
- 基于MVC4+EasyUI的Web开发框架形成之旅--MVC控制器的设计
- 基于MVC4+EasyUI的Web开发框架形成之旅--MVC控制器的设计
- JEECG - 基于代码生成器的J2EE智能开发框架 续六: JEECG 前台页面和后台交互讲解
- 基于Fragment的Android前台服务框架
- 一个基于 EasyUI 的前台架构(4)主体页面框架收工
- 一个基于 EasyUI 的前台架构(4)主体页面框架收工
- 基于J2EE轻量级容器构件框架三、控制器部分
- SSM框架基于swagger2实现API管理
- 基于XFire框架利用ant构建WebService的客户端程序
- Struts2+Spring2.5+ibatis+ExtJS3.1 基于注解框架搭建
- 基于图结构高性能计算框架:GraphLab