花魁直播高品质美女在线视频互动社区 - 花魁直播官方版

 歡迎來(lái)到素材無(wú)憂網(wǎng),按 + 收藏我們
登錄 注冊(cè) 退出 找回密碼

帝國(guó)CMS二次開發(fā)內(nèi)容存文本轉(zhuǎn)存數(shù)據(jù)庫(kù)方法

時(shí)間: 2020-09-16 10:48 閱讀: 作者:素材無(wú)憂網(wǎng)

之前存文本的數(shù)據(jù)是用的默認(rèn)的文章模型,newstext字段存儲(chǔ)在主表,現(xiàn)在需要將其轉(zhuǎn)換為數(shù)據(jù)庫(kù)格式,存儲(chǔ)在副表,多虧“夏威夷海盜”的帖子,http://bbs.phome.net/showthread-13-81898-0.html
參考這篇帖子的方法做了測(cè)試,基本上是可以的,但是存在問(wèn)題,主要是php的file函數(shù)將文本讀取后是以數(shù)組形式存在的,幾乎每段文字存儲(chǔ)到一個(gè)數(shù)組字段中,按照帖子提供的方案最終只能轉(zhuǎn)化第一個(gè)數(shù)組中的第一位,后來(lái)參考帝國(guó)程序提供的幾個(gè)函數(shù)稍加修改,完成了這個(gè)工作;

代碼如下

<?php
error_reporting(E_ERROR | E_WARNING | E_PARSE);
@set_time_limit(1000000);//設(shè)置超時(shí)時(shí)間,越長(zhǎng)越好
//********************* 程序開始 ********************
//說(shuō)明:需要現(xiàn)在帝國(guó)后臺(tái)模型設(shè)置的地方,在附表設(shè)置一個(gè)newstext1字段,等數(shù)據(jù)導(dǎo)入成功之后,再將原newstext字段刪除,并將newstext1字段修改為newstext。
//400條數(shù)據(jù),大概也就一秒鐘左右;
$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;
}
//配置數(shù)據(jù)庫(kù)參數(shù)
mysql_connect("localhost","root","");//本機(jī)數(shù)據(jù)庫(kù)用戶名和密碼
mysql_select_db("mydatabase");//本機(jī)數(shù)據(jù)庫(kù)名,
mysql_query("set names 'utf8'");
//數(shù)據(jù)表第一條信息的ID
$a=mysql_query("select id from wecms_article order by id asc limit 1");
$num1= mysql_result($a,0);
//數(shù)據(jù)表最后一條信息的ID
$b=mysql_query("select id from wecms_article order by id desc limit 1");
$num2= mysql_result($b,0);
if ($kai==1){
//循環(huán)逐條處理
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";//因?yàn)榈蹏?guó)存文本中有exit中斷,所以需要用讀文件的方法去讀取代碼,文本的路徑要正確,存在本文件所以目錄下的子目錄"d/txt/"下
$text=GetTxtFieldText($pagetexturl);
//過(guò)濾帝國(guó)存文本生成的exit中斷代碼,使用文本中的內(nèi)容替換數(shù)據(jù)庫(kù)中相應(yīng)的數(shù)據(jù)值
$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?>結(jié)束.點(diǎn)擊開始處理">
<input type=hidden name="kai" value=1>
</form>


版權(quán)聲明: 本站資源均來(lái)自互聯(lián)網(wǎng)或會(huì)員發(fā)布,如果侵犯了您的權(quán)益請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)刪除!謝謝!

轉(zhuǎn)載請(qǐng)注明: 帝國(guó)CMS二次開發(fā)內(nèi)容存文本轉(zhuǎn)存數(shù)據(jù)庫(kù)方法

標(biāo)簽:  
相關(guān)文章
模板推薦