好!欢迎访问迷津渡口 现在时间是:

迷津渡口

越感到迷惑 越接近真理

emlog MVC解构24--控制器Controller之Search_Controller

Search_Controller控制器用于输出搜索文章结果列表页面,仅有一个方法:display($params)。

function display($params) {
    // 建立日志模型
    $Log_Model = new Log_Model();
    // 建立配置缓存
    $options_cache = Option::getAll();
    // 配置缓存数组键名转换成变量,键值转换为变量值
    extract($options_cache);
    
    // 获取页码,未配置则设为首页1
    $page = isset($params[4]) && $params[4] == 'page' ? abs(intval($params[5])) : 1;
    // 获取搜索词,未配置则设为空
    $keyword = isset($params[1]) && $params[1] == 'keyword' ? trim($params[2]) : '';
    // 去除搜索词里面特殊编码,把特殊字符转换成HTML实体,在特殊字符添加转义反斜杠
    $keyword = addslashes(htmlspecialchars(urldecode($keyword)));
    // 替换搜索词里面的%为\%,_为\_,即加反斜杠
    $keyword = str_replace(array('%', '_'), array('\%', '\_'), $keyword);
    
    // 定义访问路径
    $pageurl = '';
    
    // 设置数据搜索条件为标题包含搜索词,从新到旧排列
    $sqlSegment = "and title like '%{$keyword}%' order by date desc";
    // 获取搜索获得的日志总数量
    $lognum = $Log_Model->getLogNum('n', $sqlSegment);
    // 获取搜索列表页面的总页数
    $total_pages = ceil($lognum / $index_lognum);
    if ($page > $total_pages) { // 页码超过总页数时
        // 页码设置为最后一页
        $page = $total_pages;
    }
    
    // 设置访问路径,搜索词编码
    $pageurl .= BLOG_URL.'?keyword='.urlencode($keyword).'&page=';
    
    // 获取搜索得到的日志数组
    $logs = $Log_Model->getLogsForHome($sqlSegment, $page, $index_lognum);
    // 利用工具函数获取输出列表页底部页码导航的字符串
    $page_url = pagination($lognum, $index_lognum, $page, $pageurl);
    
    // View调用前台模板的header.php和log_list.php输出搜索结果列表
    include View::getView('header');
    include View::getView('log_list');
}


点赞0
   支持一下
挤眼 亲亲 咆哮 开心 想想 可怜 糗大了 委屈 哈哈 小声点 右哼哼 左哼哼 疑问 坏笑 赚钱啦 悲伤 耍酷 勾引 厉害 握手 耶 嘻嘻 害羞 鼓掌 馋嘴 抓狂 抱抱 围观 威武 给力
 点赞
 签到
 表情
 图片
 代码
提交评论

清空信息
关闭评论
 00:00/00:00
我想和你虚度时光 - 花房姑娘(9)
  1. 恋恋风尘
  2. 恋恋风尘
  3. 恋恋风尘
  4. 恋恋风尘
  5. 恋恋风尘
  6. 恋恋风尘
  7. 恋恋风尘
  8. 恋恋风尘
  9. 恋恋风尘