帝国文章模型下如何把“存文本转换为“存数据库技巧
帝国的文章模型,默认情况下,正文字段属性是内容存文本的!也就是不保存到数据库
但是这样对应数据库容量大的,就没必要了,想转换成存到数据库的,帝国ECMS就没带这功能。今天我就来介绍如何实现!
首先打开phome_enewsf表,找到文章模型下正文字段的设置信息,找到
savetxt | tinyint(1) | 内容存文本 1是/0否 |
---|
接着写一个PHP程序,代码大致如下
$sql=$empire->query("select id,newstext from {$dbtbpre}ecms_article_data_1 ORDER BY `id` ASC");
while($r=$empire->fetch($sql)){
;$file=$r['newstext'];
;$my_file = file_get_contents("d/txt/".$file.".php");
;$a = str_replace("<? exit();?>","",$my_file);
;echo $r['id']."<br/>";
$empire->fetch1("UPDATE `phome_ecms_article_data_1` SET `newstext` = '".$a."' WHERE `id` =".$r['id']." LIMIT 1");
}
上面红色的表示文章数据表的分表,我是把正文字段设置为副表里。主表的直接ecms_article就可以了。
以上代码中的路径是按网站跟目录下的相对路径。
我网站也是这样转换成功的,由于我网站数据小,就没设置间隔,要是数据大的,请自己设置没转换多少条信息时停顿下,不然怕卡死!
记得备份....