知行社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2118|回复: 1
收起左侧

关键字添加链接

[复制链接]
知行 发表于 2011-11-7 12:40 | 显示全部楼层 |阅读模式
discuz 官网论坛上面有些关键字会被自动添加链接,比如围棋这个词,点击之后会跳转到纵横搜索页面,我想通过后台词语过滤功能添加链接,但是批量添加时由于输入框太窄,无法添加那么长的链接,所以只好去修改数据表了,这个小程序就是批量生成关键字替换的sql语句,然后粘贴到数据表,即可实现批量添加。



虽然功能实现了,但是操作比较麻烦,期待官方将批量添加的输入框改大一些,我看到后台很多地方都有“双击输入框可扩大/缩小”,可是批量添加词语过滤框却没有。

附:
1、discuz x2词语过滤表 pre_common_word;
2、源码

  1. /*
  2. * File:   keyword.cpp
  3. * Author: xuehaiyisu
  4. *
  5. * Created on 2011年11月7日
  6. */

  7. #include <iostream>
  8. #include <fstream>
  9. #include <string>
  10. #include <cstdlib>
  11. using namespace std;

  12. int main()
  13. {
  14.         cout<<"请先建立一个已 key.txt 命名的文件,内容为关键字,建议每行一个关键字。"<<endl<<endl;
  15.         string str;//关键字
  16.         string data="pre_common_word";//数据表名,默认为pre_common_word
  17.         cout<<"输入数据表名?(Y/N) \n数据表名默认为 pre_common_word ,如果您的表前缀是pre_,请选择 N:";
  18.         string choice;
  19.         getline(cin,choice);
  20.         if(choice=="Y")
  21.         {
  22.                 cout<<"请输入数据表:";
  23.                 cin>>data;
  24.         }
  25.         string domain;//域名
  26.         cout<<"请输入您的域名(格式如 www.tecbbs.com,不带http://);回车继续:";
  27.         cin>>domain;
  28.         string id;//[url=http://www.tecbbs.com/search.php?mod=my&source=adlink&q=管理]管理[/url]员id
  29.         cout<<"请输入您的[url=http://www.tecbbs.com/search.php?mod=my&source=adlink&q=管理]管理[/url]员id(格式如 admin);回车继续:";
  30.         cin>>id;
  31.         string link1="[url=http://";
  32.         string link2="/search.php?mod=my&source=adlink&q=";
  33.         string num;//词语分类编号,默认的为:默认分类0,政治1,广告2;
  34.         cout<<"请输入词语分类编号,默认的为:默认分类0,政治1,广告2;自定义分类3..."<<endl;
  35.         cin>>num;
  36.         string tmp;
  37.         ifstream in;
  38.         ofstream out;
  39.         in.open("key.txt");
  40.         out.open("change.txt");
  41.         if (!in)
  42.         {
  43.                 cout << "Error opening file";
  44.                 exit(1);
  45.         }
  46.         int i=1;//关键字编号
  47.         while(in>>str)
  48.         {
  49.                 tmp=str;
  50.                 str=link1+domain+link2+tmp;
  51.                 str=str+"]";
  52.                 str=str+tmp;
  53.                 str=str+"[/url]";
  54.                 out<<"INSERT INTO `"<<data<<"` VALUES("<<i<<", '"<<id<<"', "<<num<<", '"<<tmp<<"', '";
  55.                 out<<str<<"', '');"<<endl;
  56.                 i++;
  57.         }
  58.         in.close();
  59.         out.close();
  60.         system("pause");
  61. }
复制代码


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
 楼主| 知行 发表于 2011-11-8 12:51 | 显示全部楼层
这样做帖子标题也会被替换,而且帖子重复编辑时会重复替换,看来是思路错了,还得用其他方法,初次尝试,宣告失败,{:soso__3963746285283843431_4:}

QQ|小黑屋|手机版|知行技术社区 ( 湘ICP备11020288号-1 )

GMT+8, 2020-10-26 20:32 , Processed in 0.034913 second(s), 8 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表