您现在的位置是:首页 > cms教程 > 帝国CMS教程帝国CMS教程

帝国CMS内容存文本转存数据库的方法

谭满铿2023-05-31帝国CMS教程已有人查阅

导读之前存文本的数据是用的默认的文章模型,newstext字段存储在主表,现在需要将其转换为数据库格式,存储在副表,多亏“夏威夷海盗”的帖子

之前存文本的数据是用的默认的文章模型,newstext字段存储在主表,现在需要将其转换为数据库格式,存储在副表,多亏“夏威夷海盗”的帖子,http://bbs.phome.net/showthread-13-81898-0.html
参考这篇帖子的方法做了测试,基本上是可以的,但是存在问题,主要是php的file函数将文本读取后是以数组形式存在的,几乎每段文字存储到一个数组字段中,按照帖子提供的方案最终只能转化第一个数组中的第一位,后来参考帝国程序提供的几个函数稍加修改,完成了这个工作;
代码如下

<?php
error_reporting(E_ERROR | E_WARNING | E_PARSE);
@set_time_limit(1000000);//设置超时时间,越长越好
//********************* 程序开始 ********************
//说明:需要现在帝国后台模型设置的地方,在附表设置一个newstext1字段,等数据导入成功之后,再将原newstext字段删除,并将newstext1字段修改为newstext。
//400条数据,大概也就一秒钟左右;
$kai = $_POST['kai'];
function ReadFiletext($filepath){
$filepath=trim($filepath);
$htmlfp=@fopen($filepath,"r");
$string=@fread($htmlfp,@filesize($filepath));
@fclose($htmlfp);
return $string;
}
function GetTxtFieldText($pagetexturl){
$text=ReadFiletext($pagetexturl);
$text=substr($text,12);//去除exit
return $text;
}
//配置数据库参数
mysql_connect("localhost","root","");//本机数据库用户名和密码
mysql_select_db("mydatabase");//本机数据库名,
mysql_query("set names 'utf8'");
//数据表第一条信息的ID
$a=mysql_query("select id from wecms_article order by id asc limit 1");
$num1= mysql_result($a,0);
//数据表最后一条信息的ID
$b=mysql_query("select id from wecms_article order by id desc limit 1");
$num2= mysql_result($b,0);
if ($kai==1){
//循环逐条处理
for($i=$num1;$i<$num2;$i++){
$sql="select newstext from wecms_article 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)){        
$pagetexturl="d/txt/".$text.".php";//因为帝国存文本中有exit中断,所以需要用读文件的方法去读取代码,文本的路径要正确,存在本文件所以目录下的子目录"d/txt/"下
$text=GetTxtFieldText($pagetexturl);
//过滤帝国存文本生成的exit中断代码,使用文本中的内容替换数据库中相应的数据值
$wurl="update wecms_article_data_1 set newstext1='".$text."' where id=".$i;
$write=mysql_db_query("mydatabase",$wurl); 
}
}
}        
echo "OK,搞定!";
}
?>
<form method="post" action="index9.php">
<input type=submit name=ok value="从<?=$num1?>开始处理,到<?=$num2?>结束.点击开始处理">
<input type=hidden name="kai" value=1>
</form>

本文标签:

很赞哦! ()

相关源码

  • WordPress主题模板JustNews资讯博客类源码V5.2.2JustNews主题针对博客创作、自媒体运营及资讯发布类网站的需求而设计,提供专业的内容展示与管理方案。该主题集成前端用户中心功能,支持用户在前端界面发布和投稿文章,操作流程简洁高效。查看源码
  • (PC+WAP)家居装饰家装建材营销型网站pbootcms模板下载本模板基于PbootCMS开发,主要服务于家居装饰、建材及相关行业。采用现代化设计风格,同时适配PC和移动设备访问。模板结构清晰,突出展示家装案例和建材产品,帮助企业在线上建立专业形象,有效展示产品与服务优势。查看源码
  • (自适应响应式)蓝色勘察设计院机构单位商会协会pbootcms模板下载本模板基于PbootCMS系统开发,为勘察设计院所、工程咨询单位设计,特别适合展示设计成果、技术服务和项目案例。采用响应式技术,确保设计图纸和方案以及文案在不同设备上都能清晰展示。查看源码
  • 自适应建材瓷砖卫浴大理石类pbootcms网站模板源码下载为建材瓷砖、卫浴瓷砖企业打造的高端响应式门户模板,基于PbootCMS内核深度开发。采用前沿HTML5自适应架构,无缝兼容手机端触控交互与PC端展示场景。查看源码
  • 帝国CMS游戏应用APP推广下载站模板免费下载本模板为移动应用推广、手机游戏推广行业设计,集成H5游戏平台与APP下载功能,支持PC端与移动端自适应访问。专注于为应用开发商、游戏发行商提供专业的线上推广展示平台。查看源码
  • WordPress个人博客主题 - wp-Concise-v1.0免费下载wp-Concise-v1.0是一款专为个人博客设计的简约风格主题,采用全宽排版设计理念,注重内容呈现效果。该模板适用于个人随笔、技术分享、生活记录等博客场景,帮助用户打造专业的内容展示空间。查看源码
分享笔记 (共有 篇笔记)
验证码: