您的位置:首页 > 其它

基于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()
{
}

}
?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: