在php中将access转化到mysql

最近将 jky 的数据从mypower的access转化到了dedecms的mysql,一些问题总结一下。

1、php里面读取access数据库:

$connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=".realpath("pe.mdb") ;
$connid = odbc_connect($connstr,"","",SQL_CUR_USE_ODBC);
$result = odbc_do($connid, "select ArticleID, Content from Article");

接下来,通过odbc_fetch_row($result)就可以获取纪录:

while(odbc_fetch_row($result))
{
    $articleid = odbc_result($result,"ArticleID");
    $cons = str_replace(array("'","<o:p>","</o:p>"), array("","",""), odbc_result($result,"Content"));
    print "<br>".$cons;
}

不过这里有一个问题:php读取access数据字段有大小限制,在php.ini可以设置,默认的是:
odbc.defaultlrl =4096
大概只有4KB,为此我花了不少时间寻找问什么更新成功了还是有部分数据不能插入到mysql里面去

2、html的垃圾代码问题:

这只能通过正则表达是来解决了

preg_replace(array("/<(//)?span(?(1)>|/s*?[^>]+?>)/is","/<(//)?font(?(1)>|/s*?[^>]+?>)/is","/<p/s+?[^>]+?>/is","/<td/s+?[^>]+?>/is","/</?xml:namespace/s+?[^>]+?//>/is","/((/r?/n)[/t ]*?/r?/n)+/is"),array("","","<p>","<td>","","//2"),$cons);

其中 /<(//)?span(?(1)>|/s*?[^>]+?>)/is 处理<span>标签
/<(//)?font(?(1)>|/s*?[^>]+?>)/is 处理font标签
/<p/s+?[^>]+?>/is 处理p标签

3、关于php代码运行时间问题

php代码默认运行时间是30sceond,php.ini设置:max_execution_time = 30
当然也可以在php代码里面加入这个函数:set_time_limit(30);



dede是一个很好的cms,模板制作还不算难,看准这个cms了~
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值