站想要改版,但是以前的技术资料又舍不得丢弃?我公司最近对以往比较旧的asp进行了改版升级,并且把原来的access数据库导入mysql数据库中,实现了数据的无缝衔接。
网站数据无缝对接
因为asp+access的网站静态生成占用服务器较少,并且是目录化结构,所以从野狼SEO团队到永易搜建站团队对于企业网站都是这样做的,但是这几年发现很多客户对于程序的交互性要求越来越高,尤其是现在开放平台的对接等还是PHP程序要更好操作并且更强大,所以最近四五年我们主要就是提升我们的PHP建站系统功能和易用性。在电脑+手机适配方面,我司的建站系统表现突出,受到大家的亲睐,所以怎么把老的ASP+ACCESS数据的内容导入到新的系统里并进行网站改版成为大家的呼声,所以我们就进行了改造。
升级网站数据不丢对SEO非常有帮助
如果您需要我司为您建站,这些问题都交给我们来做,您也可以自己动手来做,实现步骤如下:
第一步:了解老系统和新系统的数据适配关系,比如我司的ASP程序主要是这几个字段:
ID---------ID号不能变
ClassID----栏目ID
Title------标题
Intro------描述
Content----内容
Hits-------点击量
KeyWords---关键词
UpdateTime-发布时间
TemplateUrl-模板地址
FileName----目录名
PicUrl------缩略图
OrderID-----排序
IStop-------置顶
如果你是参考着修改其他系统,可以看看这个字段的适配关系。
第二步,在PHP系统中,通过PHP程序度access数据库,然后存入到mysql数据库。
其中注意要做好转码或者发布时间的格式转化。
例如我司access导入到mysql数据库中就用这样的代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>数据导入</title>
</head>
<body>
<?php
define('IN_yongyisou', true);
require_once 'include/init.php';
$act=isset($_GET['act'])?$_GET['act']:'';
if($act=='yongyisou56789390'){
$conn_mdb= new com("ADODB.Connection");
$connstr_mdb= "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=". realpath("Data_ACT/#YeLangSCF4E9.mdb");
$conn_mdb->Open($connstr_mdb);
$rs= new com("ADODB.RecordSet");
$rs->Open("select ID,ClassID,Title,Intro,Content,Hits,KeyWords,UpdateTime,TemplateUrl,FileName,PicUrl,OrderID,IStop from Article_ACT where 1",$conn_mdb,1,1);
while(!$rs->eof)
{
$ID=$rs->Fields('ID')->value;
$ClassID=$rs->Fields('ClassID')->value;
$Title=iconv('GB2312','UTF-8',$rs->Fields('Title')->value);
$Intro=iconv('GB2312','UTF-8',$rs->Fields('Intro')->value);
$Content=iconv('GBK','UTF-8',$rs->Fields('Content')->value);
$Hits=iconv('GB2312','UTF-8',$rs->Fields('Hits')->value);
$KeyWords=iconv('GB2312','UTF-8',$rs->Fields('KeyWords')->value);
$UpdateTime=iconv('GB2312','UTF-8',$rs->Fields('UpdateTime')->value);
$TemplateUrl=iconv('GB2312','UTF-8',$rs->Fields('TemplateUrl')->value);
$FileName=iconv('GB2312','UTF-8',$rs->Fields('FileName')->value);
$PicUrl=iconv('GB2312','UTF-8',$rs->Fields('PicUrl')->value);
$OrderID=iconv('GB2312','UTF-8',$rs->Fields('OrderID')->value);
$IStop=iconv('GB2312','UTF-8',$rs->Fields('IStop')->value);
$Content=htmlentities($Content,ENT_COMPAT,'UTF-8');//html进行转义
$UpdateTime=strtotime($UpdateTime);//发布时间变成时间戳
if($ClassID==5734002122){
//新闻中心
$sql = "INSERT INTO ".table("article")." (id,count,cat_id,title ,body ,intro,pic,keywords, description,click,pub_time,sort,recommend,hot,pub)" .
" VALUES ('$ID','0','2','$Title','$Content','$Intro','$PicUrl', '$KeyWords','$Intro','$Hits','$UpdateTime','$OrderID','$IStop','0','1')";
if($yys->query($sql)){
echo("ID为".$ID."的文章导入成功<br/>");
}else{
echo("ID为".$ID."的文章导入失败<br/>");
}
}
$rs->MoveNext();
}
echo('导入成功');
}else{
die('参数不正确');
}
?>
</body>
</html>
CMSYOU分享PHPCMS V9模板风格管理设置技巧之后,我们继续分享一篇关于自定义PHPCMS文章URL的技巧:Phpcms V9文章内容页自定义HTML网址。
这一方法,改变html默认采用数字生成的地址,可以自定义成字母、单词、拼音,对于网址的识别性、SEO,有很大帮助!
下面是来自rhongsheng发布的教程,分享在此。
用过2008版的网友都知道,内容模型在发布内容的时候可以自定义生成的HTML文件名,这个功能对于SEO来说非常有好处,但是到了V9之后却很遗憾,这个功能却没有了,现在你只要对V9进行一个小小的修改即可令V9重新拥有08版的自定义HTML文件名的功能,操作方法如下:
1、修改你需要设置的模型,添加一个字段,配置如下:2、打开/phpcms/modules/content/create_html.php,找到代码
$urls = $this->url->show($r['id'], '', $r['catid'],$r['inputtime']);
批量替换成
$urls = $this->url->show($r['id'], '', $r['catid'],$r['inputtime'], $r['prefix']);
共三处
3、打开/phpcms/modules/content/classes/url.class.php,找到代码.$day = date('d',$time);
在其下方插入$tmp_id = $content_ishtml && $prefix ? $prefix : $id; //增加自定义HTML文件名支持
找到
$urls = str_replace(array('{$categorydir}','{$catdir}','{$year}','{$month}','{$day}','{$catid}','{$id}','{$page}'),array($categorydir,$catdir,$year,$month,$day,$catid,$id,$page),$urlrule);
修改为
$urls = str_replace(array('{$categorydir}','{$catdir}','{$year}','{$month}','{$day}','{$catid}','{$id}','{$page}'),array($categorydir,$catdir,$year,$month,$day,$catid,$tmp_id,$page),$urlrule);
完毕。
Enjoy it!
/获取excel文件
$objWriteHTML = new \PHPExcel_Writer_HTML(\PHPExcel_IOFactory::load("C:/Users/jijia2/Desktop/aa.xlsx"));
//获取样式
$css=$objWriteHTML->generateStyles();
//获取excel数据
$data = $objWriteHTML->generateSheetData();
$html = $css.$data;
前端展示这个$html就可以了
*请认真填写需求信息,我们会在24小时内与您取得联系。