帝国cms文章模型把“存文本”转换为“存数据库”

发布时间:2017-05-03

帝国的文章模型,默认情况下,正文字段属性是内容存文本的!也就是不保存到数据库,但是这样对应数据库容量大的,就没必要了,想转换成存到数据库的,帝国Ecms就没带这功能。今天我就来介绍如何实现!


首先打开phome_enewsf表,找到文章模型下正文字段的设置信息,找到 savetxt tinyint(1) 内容存文本 1是/0否 

这个字段,把1改为0即可。

接着写一个php程序,代码大致如下

require('e/class/connect.php');

require('e/class/db_sql.php');

require('e/data/dbcache/class.php');

$link=db_connect();

$empire=new mysqlquery();

$sql=$empire->query("select id,newstext from {$dbtbpre}ecms_article ORDER BY `id` ASC");

while($r=$empire->fetch($sql)){

$file=$r['newstext'];

$my_file = file_get_contents("d/txt/".$file.".php");

$a = str_replace("","",$my_file);

echo $r['id']."
";

$empire->fetch1("UPDATE `phome_ecms_article` SET `newstext` = '".$a."' WHERE `id` =".$r['id']." LIMIT 1");

}


上面红色的表示文章数据表的分表,我是把正文字段设置为主表里。副表的直接ecms_article_data_1就可以了。


以上代码中的路径是按网站跟目录下的相对路径。

我网站也是这样转换成功的,由于我网站数据小,就没设置间隔,要是数据大的,请自己设置没转换多少条信息时停顿下,不然怕卡死!

帝国cms文章模型把“存文本”转换为“存数据库”相关推荐