基于SS框架的留言本后台控制器
2012-03-06 11:19
246 查看
备用
<?php /** * Title:Gues.ct.php * Description:后台控制器 * @author:Jiangbin - zhangjb@shengshi.com.cn * Date:2012-3-2 */ require_once($_SERVER["DOCUMENT_ROOT"]."/require/global.fun.php"); _IMPORT_DB("CDSGues_users","abc"); _IMPORT_DB("CDSGues_posts","abc"); class _CCTGuesbg extends CController { var $ip; public function __init() { $this->set_page_base("abc"); return array( _METHOD('index',array(),false,false), _METHOD('detail',array('pid'),false,false), _METHOD('edit',array("pid"),false,false), _METHOD('search',array("key"),false,false), _METHOD('reply',array("pid"),false,false), _METHOD('del',array("pid"),false,false), _METHOD('delall',array("checkpid"),false,false), ); } function __ready() { $this->ip = $this->GetIP(); $this->page_title = "Guestbook后台"; _S("page_title", $this->page_title); return true; } function index() { header("Content-type:text/html; Charset=utf-8"); $rt = array(); $rt1 = array(); $cds = new CDSGues_posts(); $count = $cds->count(); $page = _P('page'); $per_page = 20; $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" => "ASC")); $rt = $cds->select(); //操作所有的记录,包括回复与留言 //echo $cds->get_sql(); _S("count",$count); _S("page",$page); _S("per_page",$per_page); _S("rt", $rt); } /** * @date:2012-3-2 * @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); } } /** * @date:2012-3-3 * @parma: integer $pid * @description:删除选中记录 */ function del($pid) { $this->set_page(false); $cds = new CDSGues_posts(); if(!$cds->exists(_EQ("pid", $pid))) { $this->error(0, "not found."); return false; } $cds->delete(_EQ("pid", $pid)); $this->redirect("/abc/guesbg/index.html"); return false; } /** * @date:2012-3-3 * @parma: integer $checkpid * @description:删除全部记录 */ function delall($checkpid) { $this->set_page(false); $checkpid = _P('checkpid'); if(!$checkpid) { $this->error(1, "缺少参数!"); return false; } //var_dump($pid); //exit(); $cds = new CDSGues_posts(); if(!$a = $cds->exists(_IN("pid", $checkpid))) { $this->error(0, "not found."); return false; } $cds->delete(_IN("pid", $checkpid)); // var_dump($checkpid); // echo $cds->get_sql(); // exit(); $this->warning("删除成功!"); return false; } /** * @date:2012-3-3 * @parma: integer $pid * @description:编辑选中记录 */ function edit($pid) { $pid = _P('pid'); $message = _P('message'); $data = array ( 'message' => _P('message'), ); $cds = new CDSGues_posts(); if($data['message']) { $cds->set_message($data['message']); return true; if($cds->update(_EQ("pid", $pid))) { $this->warning("Update Success!"); } else { $this->warning("Update Fail!"); } } } /** * @date:2012-3-5 * @parma: integer $key * @description:按关键字搜索记录 */ function search($key) { $key = _P('key'); $do = _P('do'); $keyword = "'%".$key."%'"; if($keyword == "" && $do != 0) { $this->warning("KEyWords not null!", "/abc/guesbg/"); } else { $cds = new CDSGues_posts(); $data = array(); $data = $cds->execsql("SELECT message FROM gues_posts WHERE `message` LIKE ".$keyword); //var_dump($data); if(count($data)) { //$this->set_page(false); _S("data", $data); } else { $this->error(0, "not found!"); } } } /** * @date:2012-3-5 * @parma: integer $pid * @description:回复选中的记录 */ function reply($pid) { $data = array ( 'message' => _P('message'), 'parent_id' => _P('parent_id'), ); $cds = new CDSGues_posts(); if($data['message']) { $cds->set_parent_id(intval($data['parent_id'])); $cds->set_message($data['message']); $cds->set_addtime(date("Y-m-d h:i:s")); $cds->set_addip($this->ip); //echo $cds->get_sql(); $cds->insert(); $this->warning("Reply Success!"); exit(); } } function reg() { } function login() { } function logout() { } 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"; exit(); } private function warning($str, $url = '/abc/guesbg/'){ echo "<script type='text/javascript'>alert('".$str."');location.href='".$url."';</script>"; exit(); } function __finally() { } } ?>
相关文章推荐
- 基于SS框架的留言本前台控制器
- 基于MVC4+EasyUI的Web开发框架形成之旅--基类控制器CRUD的操作
- TP5(thinkPHP5)框架基于ajax与后台数据交互操作简单示例
- 基于MVC4+EasyUI的Web开发框架形成之旅--MVC控制器的设计
- 一个基于DataTable的后台框架的实现
- 一款基于Bootstrap扁平化的后台框架Ace
- 分享一款基于Spring集成activiti全新高大尚后台框架
- Spring3.2.0-mybatis3.2.0 基于全注解搭建的后台框架-基础版
- 详解基于Bootstrap扁平化的后台框架Ace
- [置顶] Java SSM练手小项目-手把手带你搭建一个基于SSM框架的人力资源管理后台系统
- Spring3.2.0-mybatis3.2.0 基于全注解搭建的后台框架-基础版
- 分享一个基于winForm后台线程处理业务的小程序框架
- 基于EasyUI的通用后台管理系统框架搭建
- 基于thinkphp5.0的后台框架
- 基于 ThinkPHP5+Bootstrap 的后台开发框架 FastAdmin
- 基于MVC4+EasyUI的Web开发框架形成之旅--MVC控制器的设计
- 基于java极速WEB+ORM 框架:jfinal2.0开发的通用后台管理系统及源码
- 基于Django和rest framework的后台框架lucommon(一)
- CodeIgniter CI框架前后台搭建------主控制器拆分为前后台控制器
- 基于jquery后台框架设计(自适应高度,iframe简易版)