ASP转PHP手记
打算将动易网站管理系统移植到PHP环境中,寻寻觅觅了很多PHP内容管理网站,发现网上有动易转PHPCMS的代码,所以就拿定注意用PHPCMS的在google上找到一转换程序,动手做来还成功了,现将此次转换的经验与教训总结如下:
1.在http://www.otand.com/html/php/cms/20080605/2852.html下载完美动易2006 Sp6 SiteWeaver CMS6.5 Access MSSQL转 PHPCMS 2007 SP6程序解压缩备用,请不要下载PHPCMS官网的转换程序,因其有很多错误,还是完美的好。
2.先在windows下调试,求方便直接下载的PHPCMS集成包, http://soft.phpcms.cn/2008/0116/soft_138.html,一键安装后直接可以用。
(后在linux下证实,直接将MYSQL数据库复制过去是可行的)
将完美转换程序解压后,找到里面的config.php,因我以前用的是ACCESS数据库,所以这里将ACCESS以外的MSSQL全部注释掉,例如:
// 访问 访问数据库类型 数据库类型支持Access,MsSQL 请选择数据库类型并认真填写下列信息
$_CONFIG['db_type'] = 'Access';
//$_CONFIG['db_type'] = 'MsSQL';
// 访问 MsSQL 的主机名,如果是本机为localhost
//$_CONFIG['db_sql_host'] = 'localhost';
// 访问 MsSQL 的数据库名
//$_CONFIG['db_sql_name'] = 'powereasy';
// 访问 MsSQL 的用户名
//$_CONFIG['db_sql_user'] = 'powereasy';
// 访问 MsSQL 的密码
//$_CONFIG['db_sql_pass'] = 'powereasy5598';
//是否使用持久连接
//$_CONFIG['db_pconnect'] = '1';
然后将ACCESS数据库放在D盘根目录下,例如:
// 访问 access 数据库文件名,绝对地址: D:\改成D:/
$_CONFIG['access_mdb'] = 'd:/danweishujuku.mdb';
//红字地方是自己数据库名称
// 访问 access 数据库文件的用户名,一般默认为空
$_CONFIG['access_uid'] = '';
// 访问 access 数据库文件的密码,一般默认为空
$_CONFIG['access_pwd'] = '';
// PE 数据表前缀 一般不需要修改
$_CONFIG['access_tablepre'] = 'PE_';
// 每次需要转换的数据量,如果您的服务器比较慢,请将这个值调小
$CONFIG['rpp'] = '1000';
?>
仅仅更改这两项。
然后将整个解压后的包放在网站根目录下,我这里是phproot所以直接放PHProot下即可。
比较笨的我,刚开始是这么做的,人家readme上是这么写的“将本程序解压到PHPCMS根目录”我呢,没有把一整包放在根目录下,而是把一堆文件拷到了PHPROOT下,这样肯定会覆盖原有的INDEX.PHP啊,我又把原index.php做了个备份,然后运行之,然后会有错误提示若干:
Warning: include_once(../include/common.inc.php) [function.include-once]: failed to open stream: No such file or directory in D:\PC_webserver\phproot\index.php on line 14
Warning: include_once() [function.include]: Failed opening '../include/common.inc.php' for inclusion (include_path='.;C:\php5\pear') in D:\PC_webserver\phproot\index.php on line 14
Warning: include_once(PHPCMS_ROOT/config.inc.php) [function.include-once]: failed to open stream: No such file or directory in D:\PC_webserver\phproot\index.php on line 15
Warning: include_once() [function.include]: Failed opening 'PHPCMS_ROOT/config.inc.php' for inclusion (include_path='.;C:\php5\pear') in D:\PC_webserver\phproot\index.php on line 15
Warning: include_once(PHPCMS_ROOT/include/cache.func.php) [function.include-once]: failed to open stream: No such file or directory in D:\PC_webserver\phproot\index.php on line 16
Warning: include_once() [function.include]: Failed opening 'PHPCMS_ROOT/include/cache.func.php' for inclusion (include_path='.;C:\php5\pear') in D:\PC_webserver\phproot\index.php on line 16
Warning: include_once(PHPCMS_ROOT/admin/include/global.func.php) [function.include-once]: failed to open stream: No such file or directory in D:\PC_webserver\phproot\index.php on line 17
Warning: include_once() [function.include]: Failed opening 'PHPCMS_ROOT/admin/include/global.func.php' for inclusion (include_path='.;C:\php5\pear') in D:\PC_webserver\phproot\index.php on line 17
Access Denied
这些东西说明找不到某个文件,看了转换程序的index.php原来在这里
第14行的include_once(PHPCMS."/include/common.inc.php");
而PHPCMS.的定义是“..”这样的话直接就出了phproot这个目录了,所以会提示找不到文件
有两个方法可以解决:
1:将index.php文件的include_once(PHPCMS."/include/common.inc.php");的(PHPCMS."/include/common.inc.php");改为include_once("include/common.inc.php");
然后再运行http://127.0.0.1/index.php
2:解压转换程序后更改config.php文件,然后将整个包拷到网站根目录下例如:
http://127.0.0.1/完美动易2006 Sp6 SW6.5 Access MSSQL转 PHPCMS 2007 SP6 /index.php
第二种是最简单的,定义好自己数据库后运行下即可,省去了寻找问题的时间。
转换完后登陆后台,此时切记切记要更新全部缓存否则当管理频道--重建目录时会提示如下错误:
Warning: require(D:/PC_webserver/phproot/languages//phpcms.lang.php) [function.require]: failed to open stream: No such file or directory in D:\PC_webserver\phproot\include\common.inc.php on line 28
Fatal error: require() [function.require]: Failed opening required 'D:/PC_webserver/phproot/languages//phpcms.lang.php' (include_path='.;C:\php5\pear') in D:\PC_webserver\phproot\include\common.inc.php on line 28
非常要命的错误啊!!!!出现后刷新页面整个后台都无法登陆了!!!
刷新后的错误提示:
Warning: require(D:/PC_webserver/phproot/languages//phpcms.lang.php) [function.require]: failed to open stream: No such file or directory in D:\PC_webserver\phproot\include\common.inc.php on line 28
Fatal error: require() [function.require]: Failed opening required 'D:/PC_webserver/phproot/languages//phpcms.lang.php' (include_path='.;C:\php5\pear') in D:\PC_webserver\phproot\include\common.inc.php on line 28
此时只有重新安装PHPCMS了!!
再强调一下:转换完后登陆后台首先是更新缓存!!!!!
ASP转PHP手记的更多相关文章
- (转)asp.net(C#)手记之Repeater与两级菜单
先来张图片说明下我们要实现的菜单: 这个菜单只实现了2级哈. 我采用的方法是嵌套2个Repeater. 先看下数据库中的表结构: 数据: 上代码: aspx: <asp:Repeater ID= ...
- ASP.NET MVC4中用 BundleCollection使用问题手记
ASP.NET MVC4中对JS和CSS的引用又做了一次变化,在MVC3中我们这样引用资源文件: <link href="@Url.Content("~/Content/Si ...
- 【手记】解决VS发布asp.net项目报错“该项目中不存在目标GatherAllFilesToPublish”及后续问题
办法在最后. 用VS2017打开一个以前用VS2010写的asp.net项目后,设置好发布选项(发布到文件夹),发布的时候报错如图: 搜索一番,找到的办法是: 在项目文件(xxx.csproj)中,在 ...
- .NET手记-为ASP.NET MVC程序集成Autofac
MVC Autofac总是会紧跟最新版本的ASP.NET MVC框架,所以文档也会一直保持更新.一般来讲,不同版本的框架集成Autofac的方法一般不变. MVC集成需要引用 Autofac.Mvc5 ...
- [ASP.NET MVC]: - EF框架学习手记
1.EF(Entity Framework)实体框架EF是ADO.NET中的一组支持开发面向数据的软件应用程序的技术,是微软的一个ORM框架. 2.什么是ORM?ORM指的是面向对象的对象模型和关系型 ...
- 【手记】ASP.NET提示“未能创建类型”处理
我是在本机启动IIS Express调试一个ashx(一般处理程序)时遇到这个报错,网上的说法普遍有这么几种: 把bbb.ashx中的Class="aaa.bbb" 改为Class ...
- .NET手记-ASP.NET MVC快速分页的实现
对于Web应用,展示List是很常见的需求,随之而来的常见的分页组件.jQuery有现成的分页组件,网上也有着大量的第三方分页组件,都能够快速实现分页功能.但是今天我描述的是用基本的C#和html代码 ...
- ASP.NET MVC 随手记
ViewBag: 本质上市一个字典,提供了一种View可以访问的动态数据存储.这里用到了.NET 4.0的动态语言特性.可以给ViewBag添加任意属性,并且这个属性是动态创建的,不需要修改类的定义就 ...
- Asp.ner Core-Blazor随手记
后续继续补充内容.... 1.安装.Net Core3.0 SDK及以上版本都有待Blazor 2.如果想在.razor页面直接使用C#代码,相当于html里面嵌入了C#代码,可以在命令行里面输入下面 ...
随机推荐
- jquery下 选择器整理
jQuery 的选择器可谓之强大无比,这里简单地总结一下常用的元素查找方法 $("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个 ...
- Delphi中多线程下使用使用 UniDAC+MSSQL 需要注意的问题(连接前调用CoInitialize)
一般解决方法是在线程开始启用 CoInitialize(nil),线程结束调用 CoUninitialize .如果你使用多种数据库连接,比如三层中经常切换到MSSQL和Oracle,我们只需在判断 ...
- 单元测试之C/C++
如今TDD很火,我公司小,一般写代码不写测试用例的,一般就是随便测试下函数的输入输出,没用工具或框架来测试,非常简单,一点也不正规化. 在一种传统的结构化编程语言中,比如C,要进行测试的单元一般是函数 ...
- js深入研究之无法理解的js类代码,extend扩展
<script type="text/javascript"> function Person(name) { this.name = name; } Person.p ...
- 深入浅出Node.js (7) - 网络编程
7.1 构建TCP服务 7.1.1 TCP 7.1.2 创建TCP服务器端 7.1.3 TCP服务的事件 7.2 构建UDP服务 7.2.1 创建UDP套接字 7.2.2 创建UDP服务器端 7.2. ...
- web.xml中contextConfigLocation的作用(转)
原文地址:http://blog.csdn.net/zhangliao613/article/details/6289114 原文格式较乱,此处略作整理.内容未变. 在web.xml中使用contex ...
- 原生javascript 改写的tab选项卡
<!--css部分--> <style> *{ margin: 0; padding: 0; } ul,li{ list-style: none } .tabbox{ widt ...
- ListView的Item被点击和其中的Button被点击同时生效
Android开发中在ListView中经常有Button或ImageButton等需要被点击的控件,如果不加一些特殊的限制,有可能 ListView的Item的点击事件或Button的点击事件,其中 ...
- SELECT--UNION,UNION ALL,MINUS, INTERSECT,EXISTS
SELECT--UNION,UNION ALL,MINUS, INTERSECT返回两个查询结果的集合操作,两个查询结果集必须字段相同.UNION和UNION ALL并集操作,UNION并集后去掉重复 ...
- CSS基础知识笔记(二)之选择器
CSS选择器 选择器{ 样式; } 每一条css样式声明(定义)由两部分组成,形式如下: 在{}之前的部分就是“选择器”,“选择器”指明了{}中的“样式”的作用对象,也就是“样式”作用于网页中的哪些元 ...