博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
dede织梦批量导入关键词
阅读量:7281 次
发布时间:2019-06-30

本文共 5350 字,大约阅读时间需要 17 分钟。

在后台替换对应的文件件即可.

 

注意:如果你的关键字长度超过16个字符的话,需要更改 dede 中 keywords 表中的keyword 字段字符长度

article_keywords_main.php

ExecuteNoneQuery("DELETE FROM `#@__keywords` WHERE aid='$aid'"); continue; } //禁用项目 $staold = ${'staold_'.$aid}; $sta = empty(${'isnouse_'.$aid}) ? 1 : 0; if($staold!=$sta) { $query1 = "UPDATE `#@__keywords` SET sta='$sta',rpurl='$rpurl' WHERE aid='$aid' "; $dsql->ExecuteNoneQuery($query1); continue; } //更新链接网址 if($rpurl!=$rpurlold) { $query1 = "UPDATE `#@__keywords` SET rpurl='$rpurl' WHERE aid='$aid' "; $dsql->ExecuteNoneQuery($query1); } } ShowMsg("完成指定的更改!",$ENV_GOBACK_URL); exit();}//增加关键字else if($dopost=='add'){ $ENV_GOBACK_URL = empty($_COOKIE['ENV_GOBACK_URL']) ? "-1" : $_COOKIE['ENV_GOBACK_URL']; $keyword = trim($keyword); $rank = preg_replace("#[^0-9]#", '', $rank); if($keyword=='') { ShowMsg("关键字不能为空!",-1); exit(); } $row = $dsql->GetOne("SELECT * FROM `#@__keywords` WHERE keyword LIKE '$keyword'"); if(is_array($row)) { ShowMsg("关键字已存在库中!","-1"); exit(); } $inquery = "INSERT INTO `#@__keywords`(keyword,rank,sta,rpurl) VALUES ('$keyword','$rank','1','$rpurl');"; $dsql->ExecuteNoneQuery($inquery); ShowMsg("成功增加一个关键字!",$ENV_GOBACK_URL); exit();}//文件导入式 批量添加关键词elseif ( $dopost == 'fileKeywords') { if ( is_uploaded_file( $filename ) ) { $newFileName = date('YmdHis', time() ) .'.txt'; $newDirPath = $cfg_basedir . '/uploads/keywords'; $newFilePath = $newDirPath .'/'.$newFileName; //目录不存在则创建 if ( !file_exists( $newDirPath ) ) { mkdir( $newDirPath, 0777, true ); } move_uploaded_file( $filename, $newFilePath); //读取上传的文件 $handle = fopen( $newFilePath, 'r' ) or ShowMsg("上传文件读取失败",-1); $keyArr = array(); if ($handle) { while (!feof($handle)) { $buffer = fgets($handle, 4096); $buffer = str_replace(',', ',', $buffer); $buffer = str_replace(array("\n"), '', $buffer); $buffer = trim($buffer); if(!empty($buffer)) { $keyArr[] = explode(',', $buffer); } } fclose($handle); @unlink( $newFilePath ); } //取出数据库所有的关键词,和新添加关键词比较,如果新添加的关键字,数据中存在则过滤 $dsql->SetQuery( "SELECT `keyword` FROM `#@__keywords` " );//将SQL查询语句格式化 $dsql->Execute();//执行SQL操作 //通过循环输出执行查询中的结果 $dataKeyArr = array(); while( $row = $dsql->GetArray() ) { $dataKeyArr[] = $row['keyword']; } //拼接mysql 语句 $i = 0; foreach ( $keyArr as $k => $v ) { $key = trim( $v[0] ); //把读取txt文档的数据转utf-8编码 $key = mb_convert_encoding($key, 'utf-8', 'gbk'); //如果数据库中存在该关键词,则跳出本次循环。 注意: keyword字段在数据库中长度16字符,需要更更长点 if( in_array( $key, $dataKeyArr ) ) continue; //拼接mysql语句 $rpurl = trim($v[1], ' '); $rank = trim($v[2], ' '); $sql = "INSERT INTO `#@__keywords` ( keyword, rank, sta, rpurl ) VALUES ( '{
$key}', {
$rank}, 1, '{
$rpurl}')"; $res = $dsql->ExecuteNoneQuery2($sql); if( $res != -1) $i ++; } //如果导入的文件所有的关键词都添加过了,则停止执行; if( empty( $i ) ) { ShowMsg("警告:你提交的关键词,早已经添加过了!!!",-1); die(); } else { ShowMsg("你成功导入{
$i}条数据",-1); } } }//清空关键字表里的所有数据 else if ( $dopost == 'delAll'){ $dsql->ExecuteNoneQuery('TRUNCATE TABLE `#@__keywords`') ? ShowMsg("你已成功清除所有的关键词!!", $ENV_GOBACK_URL ) : ShowMsg("清除关键词失败",-1) ;}if(empty($keyword)){ $keyword = ''; $addquery = '';}else{ $addquery = " WHERE keyword LIKE '%$keyword%' ";}$sql = "SELECT * FROM `#@__keywords` $addquery ORDER BY rank DESC";$dlist = new DataListCP();$dlist->pageSize = 20;$dlist->SetParameter("keyword",$keyword);$dlist->SetTemplate(DEDEADMIN."/templets/article_keywords_main.htm");$dlist->SetSource($sql);$dlist->Display();function GetSta($sta){ if($sta==1) return ''; else return ' checked="1" ';}

 

 

article_keywords_main.htm

 

关键字管理
{dede:datalist}
{/dede:datalist}
关键词维护   
搜索:    
新增关键字: 链接网址: 频率:
选择 关键字 链接网址 频率 管理
{dede:field.keyword/} 禁用   删除
     
{dede:pagelist listsize=3/}

 

转载于:https://www.cnblogs.com/Abner3721/p/6259326.html

你可能感兴趣的文章
Android四种常用的消息传递机制/模式的比较
查看>>
我的友情链接
查看>>
五虎遁月 和 五鼠遁时 法
查看>>
很好的一个blog,记录一下
查看>>
关于mysql修复表
查看>>
DBWn与物理写
查看>>
ajax实现的动态展开
查看>>
UserProfile同步配置
查看>>
java多线程之CountDownLatch类基本用法
查看>>
ubuntu 14.04开机出现错误
查看>>
request方法小结
查看>>
python 与数据结构
查看>>
LAMP搭建2:Apache安装
查看>>
linux之正则表达式和grep
查看>>
示例演示“距离矢量路由算法”工作原理
查看>>
mysql replication支持ssl,一主一从 +CA服务器
查看>>
mybatis源码总结
查看>>
机器学习理论篇1:机器学习的数学基础
查看>>
[Thinking In Java]代码整理之操作符(Operators)(二)
查看>>
Elastix 2.3与2.4之中文語音包(全)
查看>>