ocmod使用多个xml文件(xml超过64kb错误)

时间:2015-01-12 16:44:46

标签: xml opencart2.x

当xml文件超过64kb时,有没有办法爆炸xml文件?

问题 当我的xml文件超过64kb时,它会显示:(

    Warning: DOMDocument::loadXML(): CData section not finished <tr> <td colspan="2"> <div id="map_canvas in Entity, line: 1929 in C:\wamp\www\qdrah\oc2test1\admin\controller\extension\modification.php on line 132
Warning: DOMDocument::loadXML(): Premature end of data in tag add line 1893 in Entity, line: 1929 in C:\wamp\www\qdrah\oc2test1\admin\controller\extension\modification.php on line 132
Warning: DOMDocument::loadXML(): Premature end of data in tag operation line 1891 in Entity, line: 1929 in C:\wamp\www\qdrah\oc2test1\admin\controller\extension\modification.php on line 132
Warning: DOMDocument::loadXML(): Premature end of data in tag file line 1890 in Entity, line: 1929 in C:\wamp\www\qdrah\oc2test1\admin\controller\extension\modification.php on line 132
Warning: DOMDocument::loadXML(): Premature end of data in tag modification line 2 in Entity, line: 1929 in C:\wamp\www\qdrah\oc2test1\admin\controller\extension\modification.php on line 132Notice: Trying to get property of non-object in C:\wamp\www\qdrah\oc2test1\admin\controller\extension\modification.php on line 143
    ( ! ) Fatal error: Call to a member function getElementsByTagName() on a non-object in C:\wamp\www\qdrah\oc2test1\admin\controller\extension\modification.php on line 145
    Call Stack
    #   Time    Memory  Function    Location
    1   0.0016  300672  {main}( )   ..\index.php:0
    2   0.0396  1156520 Front->dispatch( )  ..\index.php:171
    3   0.0418  1237880 Front->execute( )   ..\front.php:29
    4   0.0418  1237880 Action->execute( )  ..\front.php:34
    5   0.0442  1482808 call_user_func ( )  ..\action.php:65
    6   0.0442  1482840 ControllerExtensionModification->refresh( ) ..\action.php:65

我的文件显示如下:

upload -> have images
install.php
install.xml
readme.txt

我希望可以将xml文件分开移动,就像管理员修改到admin.xml一样,因为大文件很难更新,但是当我查看admin / controller / extension / installer.php时,它似乎不可能:(

所以目前我看到在两个ocmod中爆炸我的ocmod,直到有人给我们解决她或opencart更新这个问题。

admin请添加标签ocmod

1 个答案:

答案 0 :(得分:1)

好吧,我发现了这个错误!! xml文件存储在数据库和字段类型(文本)中这种类型的大小是64KB所以当xml文件大于64KB时它的剪切然后它会导致上面的错误!!

有关此链接中有关mysql文本字段类型的更多信息 Maximum length for MySQL type text

类型应为MEDIUMTEXT,大小为16MB。

因此,在修复之前,您可以在opencart数据库中运行此查询

ALTER TABLE oc_modification CHANGE xml xml MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ;

或通过此ocmod使用它 https://drive.google.com/file/d/0B2-nzvg31rU7QVAtZnVGN2lYRzA/view?usp=sharing

如果在ftp中有错误,请使用此ocmod http://www.opencart.com/index.php?route=extension/extension/info&extension_id=18892

感谢