帝国论坛帝国网站管理系统交流区模板/标签/插件共享交流[原创]帝国cms批量王使用方法一百问 【本版专题贴子】  
 2/8    |‹ ‹‹ 1 2 3 4 5 6 7 8 ›› ›|
主题:[原创]帝国cms批量王使用方法一百问 [加入收藏夹]   

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :2986
经验值   :8508
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 11 楼]

10.  再来一个?

代码5:[plw]批量提取第一张图片为标题图片

if(!$r[titlepic]){
      $newstext=stripslashes($r['newstext']);
         $pattern = '/<img(?=\\s).*?(?<=\\s)src="(.+?)"/i';
          preg_match($pattern, $newstext, $matches);
      if($matches){
                $r[titlepic]= $matches[1];//返回第一张图片地址
                if(!strstr($r[titlepic],'://')){$r[titlepic]=$_SERVER[HTTP_ORIGIN].'/'.ltrim($r[titlepic],'/'); }
                 
        }
}
$listtemp='titlepic';



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2018-09-27 18:42:47 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :2986
经验值   :8508
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 12 楼]

11.不是系统表,而是单个的数据表,比如帝国的栏目表,可以处理吗?

可以处理。选择单数据表 ,比如栏目表选择:


上传以下图片:




帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2018-09-27 18:47:25 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :2986
经验值   :8508
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 13 楼]

这个输入框是动态筛选提示的,特别方便选择。看这个例子:



栏目名称里面都含有“2014”的字样 现在需要修改为2015
      
       选择单表   phome_enewsclass  
代码为:
       $r['classname']=str_replace('2014','2015',$r['classname']);
      $listtemp='classname';



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2018-09-27 18:50:27 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :2986
经验值   :8508
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 14 楼]

12.帝国内置的批量替换就不错,怎么还要批量王?

帝国内置的批量替换,效率很高,方便我们批量修改字段值。但是,他对正则支持的不好,对于复杂的替换,就有点力不从心了。

对于这样的求助:

[求助]批量替换中的正则替换支持纯正则么?
如题
比如比较复杂的正则替换
[^abc]{1,10}
这样的原生正则
我尝试了一下 貌似不行 还是帝国的输入需要什么特别的转义?
还是仅仅支持*符号的通用匹配而已?
如果只是支持*的通用符号匹配的话
求指点 是否可以让替换功能支持原生正则
因为有些复杂度太高的替换 *符号完全无法实现想要的功能
求前辈们指点迷津


就只能回答,暂时不支持了。然而,帝国批量王里头,php能干的,你都能干,正则自然不在活下。



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2018-09-28 02:38:52 已设置保密 顶部 回复 引用 报告 编辑 删除

jwmm
用户头衔:进士

精华贴   :0
发贴数   :1093
经验值   :5249
注册时间:2012-01-20
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 15 楼]

支持一下




2018-09-28 12:31:34 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :2986
经验值   :8508
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 16 楼]

13.可以批量删除标题重复的文章吗?

可以做到。记得删除一条信息 ,要完成以操作。叫做 五删二更新。

1). 删除索引表信息
2). 删除主表信息
3). 删除数据表信息(附表)
4).  删除附件信息
5) 删除生成的信息文件
6) 更新栏目信息统计
7) 更新栏目列表

的确麻烦,懒得给代码了。

可以用另外的思路解决 : http://www.zhongyf.com/qita/rj/2018-10-26/124493.html  

[该贴被修改 1 次,最后修改时间 2018-10-26 12:15:37 ]


帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2018-10-16 20:43:25 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :2986
经验值   :8508
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 17 楼]

14.批量修改指定文章属性
  同一栏目下的文章,如何批量修改指定属性?在文章中添加一个下拉字段,下拉包含个地区:如上海、北京、深圳、广州....
   添加了很多文章 文章上传是没有分好是属于哪个地区的,请问,这种情况下如何批量把文章修改地区属性。
   就像搜索标题包含广州的的文章,把他们全部做一级推荐这样的操作.在线等,求助!!!

   比如你说的把标题包含广东的信息,设置为一级推荐的sql:
   update phome_ecms_表 set isgood=1 where title like '%广东%';

  显然这个要求用sql完全能够高效快速完成。

如果用批量王,如何写代码呢?
      表单的主表附加添加,填写   title like '%广东%'

      对应的模板代码为:
$r[isgood]=1;
$listtemp='isgood';
   



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2018-10-16 20:49:17 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :2986
经验值   :8508
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 18 楼]

15. 如何删除内容为空的文章,或者内容小于500kb的文章?

删除内容为空的文章的方法是: 选取对应的数据表附表条件中(如果newstext字段在主表中,则在主表条件中)填写:newstext=''

至于内容小于500k,哎呀,有点变态了吧?一般文章的内容也就几kb。非要实现的话---


选取对应的数据表附表条件中(如果newstext字段在主表中,则在主表条件中)填写:length(newstext)<167000



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2018-10-17 03:27:15 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :2986
经验值   :8508
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 19 楼]

16. 把newstext中的aaa123bbb、aaa456bbb、aaa789bbb 换成aaabbb

$listtemp='newstext';
$r[newstext]=stripslashes($r[newstext]);
$r[newstext]=str_replace(array('aaa123bbb','aaa456bbb','aaa789bbb'),'aaabbb',$r[newstext]);
$r[newstext]=addslashes($r[newstext]);

[该贴被修改 1 次,最后修改时间 2018-10-17 03:38:14 ]


帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2018-10-17 03:34:31 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :2986
经验值   :8508
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 20 楼]

17.新闻正文的批量替换没作用
    height="498"  width="510"  替换为height="640"  width="910"
    原因:是因为在数据库里引号前有斜杠,替换是斜杠也要写进去。那么帝国批量王,有这封面的考虑吗?

有这个考虑。所以在处理正文字段的时候,比如16楼的情况,都先去掉反斜杠:
  $r[newstext]=stripslashes($r[newstext]);

操作完成后,要写回数据库,再增加:

$r[newstext]=addslashes($r[newstext]);



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2018-10-17 03:37:46 已设置保密 顶部 回复 引用 报告 编辑 删除
 2/8    |‹ ‹‹ 1 2 3 4 5 6 7 8 ›› ›|

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1