search_model.class.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. defined('IN_PHPCMS') or exit('No permission resources.');
  3. pc_base::load_sys_class('model', '', 0);
  4. class search_model extends model {
  5. public $table_name = '';
  6. public function __construct() {
  7. $this->db_config = pc_base::load_config('database');
  8. $this->db_setting = 'default';
  9. $this->table_name = 'search';
  10. parent::__construct();
  11. }
  12. /**
  13. * 添加到全站搜索、修改已有内容
  14. * @param $typeid
  15. * @param $id
  16. * @param $data
  17. * @param $text 不分词的文本
  18. * @param $adddate 添加时间
  19. * @param $iscreateindex 是否是后台更新全文索引
  20. */
  21. public function update_search($typeid ,$id = 0,$data = '',$text = '',$adddate = 0, $iscreateindex=0) {
  22. $segment = pc_base::load_sys_class('segment');
  23. //分词结果
  24. $fulltext_data = $segment->get_keyword($segment->split_result($data));
  25. $fulltext_data = $text.' '.$fulltext_data;
  26. if(!$iscreateindex) {
  27. $r = $this->get_one(array('typeid'=>$typeid,'id'=>$id),'searchid');
  28. }
  29. if($r) {
  30. $searchid = $r['searchid'];
  31. $this->update(array('data'=>$fulltext_data,'adddate'=>$adddate),array('typeid'=>$typeid,'id'=>$id));
  32. } else {
  33. $siteid = param::get_cookie('siteid');
  34. $searchid = $this->insert(array('typeid'=>$typeid,'id'=>$id,'adddate'=>$adddate,'data'=>$fulltext_data,'siteid'=>$siteid),true);
  35. }
  36. return $searchid;
  37. }
  38. /*
  39. * 删除全站搜索内容
  40. */
  41. public function delete_search($typeid ,$id) {
  42. $this->delete(array('typeid'=>$typeid,'id'=>$id));
  43. }
  44. }
  45. ?>