帝国ECMS技巧之内容存文本模式转存数据库模式的

656 ℃

帝国ECMS技巧之内容存文本模式转存数据库模式的处理方法,主要转换步骤如下:

步骤:

1.因为找了很久没有找到ECMS读取文本的函数,而且每一条数据都要查询和写入一次数据库,最好还是做一个本地环境,用自己的电脑来处理.我用的是APMServ,

2.先备份数据库,保存到本地,备份帝国存文本的目录 /d/txt/ 到本地,目录最好也按照网站上的层次放置,如有变化,可以修改下面代码中的路径.

3.用帝国备份网恢复到本机一个数据库中,如代码中的babyucan

4.修改下面代码中的相关数据库配置.

5.运行提供的简易转换程序

6.提示处理完毕后,使用帝国备份王备份所处理的数据表,我写的代码中处理的是phome_ecms_news,然后把处理好的数据备份上传,恢复数据即可.

程序只针对newstext字段处理,所以处理完后只备份新闻数据表就可以了.

代码内容如下,大家可以先测试一下。

<?php
error_reporting(E_ERROR | E_WARNING | E_PARSE);

@set_time_limit(10000);//设置超时时间,越长越好

//********************* 程序开始 ********************

$kai = $_POST['kai'];

//配置数据库参数
mysql_connect("localhost","root","");//本机数据库用户名和密码
mysql_select_db("babyucan");//本机数据库名,
mysql_query("set names 'gb2312'");

//数据表第一条信息的ID
$a=mysql_query("select id from phome_ecms_news order by id asc limit 1");
$num1= mysql_result($a,0);

//数据表最后一条信息的ID
$b=mysql_query("select id from phome_ecms_news order by id desc limit 1");
$num2= mysql_result($b,0);
if ($kai == 1) {
    //循环逐条处理
    for ($i = $num1; $i < $num2; $i++) {

        $sql = "select newstext from phome_ecms_news where id=".$i;

        if ($result = mysql_query($sql)) {
            $r = mysql_fetch_object($result);
            $text = $r – >newstext;

            //判断是否是存文本的信息
            if (strlen($text) == 42 && preg_match("/^[0-9a-zd/]*$/i", $text)) {

                $url = "d/txt/".$text.".php"; //因为帝国存文本中有exit中断,所以需要用读文件的方法去读取代码,文本的路径要正确,存在本文件所以目录下的子目录"d/txt/"下
                $temp = file($url);

                //echo substr($temp[0],12);
                //过滤帝国存文本生成的exit中断代码,使用文本中的内容替换数据库中相应的数据值
                $wurl = "update phome_ecms_news set newstext='".substr($temp[0], 12)."' where id=".$i;
                $write = mysql_db_query("babyucan", $wurl);
            }
        }
    }
    echo "OK,搞定!";
}

?>
<form method="post" action="index.php">
<input type=submit name=ok value="从<?=$num1?>开始处理,到<?=$num2?>结束.点击开始处理">
<input type=hidden name="kai" value=1>
</form>

一款免费开源的 JavaScript 数据库——PouchDB

数据库decimal数据类型是什么意思?如何使用

oracle如何对数据库判断表是否存在并删除

nodejs如何配置mysql数据库

NoSQL数据库的特点(NoSQL简介)

标签: ecms, 备份, 帝国, 数据库, 文本

上面是“帝国ECMS技巧之内容存文本模式转存数据库模式的”的全面内容,想了解更多关于 帝国cms 内容,请继续关注web建站教程。

当前网址:https://m.ipkd.cn/webs_1155.html

声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

帝国CMS7.5版后台信息发布限制可设置更严格
Hexo如何下载网站并配置
如何在Vue中实现图片的黑白处理?
js如何利用js2xmlparser工具将对象转为xml文件
js把一个数组根据相同名字合并成到子数组里