提交数据处理关键字

使用方法

<span style="white-space:pre">	</span>$rid=intval($_GPC['rid']);
	$rid=$this->setkeyword($_GPC['keywords'],$rid);
	if(empty($rid)){
		message('关键字参数错误,请重新提交。');
	}


关键字处理


	public function setkeyword($_kewords,$rid=0,$_module=''){
		global $_W;
		if(empty($_module)){
			$_module=$this->module['name'];
		}
		if(empty($_kewords)) {
			return false;
		}
		if($rid==0){
  			//新添加,第一步添加到rule表中,第二步添加关键字
			$rule = array(
				'weid' => $_W['weid'],
				'cid' => '',
				'name' =>$_kewords,
				'module' => $_module,
				'status' => 1,
				'displayorder'=>0,
			);
			$result = pdo_insert('rule', $rule);
			$rid = pdo_insertid();
			if (!empty($rid)) {
				//更新,添加,删除关键字
				$rows = array();
				$rowtpl = array(
					'rid' => $rid,
					'weid' => $_W['weid'],
					'module' => $rule['module'],
					'status' => $rule['status'],
					'displayorder' => $rule['displayorder'],
				);

				if(!empty($_kewords)) {
					$_kewords=str_replace(' ',',',$_kewords);
					$kwds = explode(',', trim($_kewords));
					foreach($kwds as $kwd) {
						$kwd = trim($kwd);
						if(empty($kwd)) {
							continue;
						}
						$rowtpl['content'] = $kwd;
						$rowtpl['type'] = 1; 
						$rows[md5($rowtpl['type'] . $rowtpl['content'])] = $rowtpl;
					}
				}
				foreach($rows as $krow) {
					$result = pdo_insert('rule_keyword', $krow);
				}
				return $rid;
			} else {
				return false;
			}
		}else{
			//修改
			$rule = pdo_fetch("SELECT * FROM ".tablename('rule')." WHERE id = :id AND weid=:weid AND module=:module", array(':id' => $rid,':weid'=>$_W['weid'],':module'=>$_module));
			if($rule==false){
				pdo_delete('rule_keyword',array('rid'=>$rid,'module'=>$_module));
				return false;
			}
 			//获取所有关键字
			$keylist=pdo_fetchall('select * FROM '. tablename('rule_keyword') . ' WHERE `rid`=:rid AND `weid`=:weid order by id asc',array('rid'=>$rid,':weid'=>$_W['weid']));
			 
			$_kewords=str_replace(' ',',',$_kewords);
			$kwds = explode(',', trim($_kewords));
			 
			if(count($kwds)>count($keylist)){
 				foreach($kwds as $k=>$v){
					if(isset($keylist[$k])){
						if($v==$keylist[$k]['content']){
							//关键字相同,无需操作
						}else{
							pdo_update('rule_keyword',array('content'=>$v),array('id'=>$keylist[$k]['id']));
						}
					}else{
						//超出部分,新添加
						$rowtpl = array(
							'rid' => $rid,
							'weid' => $_W['weid'],
							'module' => $rule['module'],
							'status' => $rule['status'],
							'displayorder' => $rule['displayorder'],
							'content' => $v,
							'type' => 1,
						);
						pdo_insert('rule_keyword',$rowtpl);
					}
				}
				return $rid;
			}else{
 				foreach($keylist as $k=>$v){
					if(isset($kwds[$k])){
						if($v['content']==$kwds[$k]){
							//关键字相同,无需操作
						}else{
							pdo_update('rule_keyword',array('content'=>$kwds[$k]),array('id'=>$v['id']));
						}
					}else{
						//超出部分,删除
						pdo_delete('rule_keyword',array('id'=>$v['id']));
					}
				}
				return $rid;
			}
		}
		return $rid;
	}

删除关键字

//删除关键字
	public function delkeyword($rid=0,$_module=''){
		global $_W;
		if(empty($_module)){
			$_module=$this->module['name'];
		}
		$temp1=pdo_delete("rule_keyword",array('rid'=>$rid,'module'=>$_module));
		$temp2=pdo_delete("rule",array('id'=>$rid,'module'=>$_module));
		return $temp1&&$temp2;
	}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值