Php 表达式引擎SimpleXmlIterator已损坏

Php 表达式引擎SimpleXmlIterator已损坏,php,xml,expressionengine,Php,Xml,Expressionengine,这是我的第一个问题,我不知道如何根据指导方针与其他人相关。我想最后的一个问题是,noob是否应该尝试干预他们不完全理解的代码 我的站点依赖于在别处生成的xml数据库,该数据库被拼接成特定于站点的格式,由原始开发人员设置。生成数据库的系统将标签从“联系人”更改为“个人”,打破了拼接的数据公式。(Grr.) 我认为我已经修复了它,因为我更改了接收文件中的标记,但是拼接器刚刚完全停止。(基本上,我对网站/编码的了解还不够,没有尝试过做这些更改。但我想我可以侥幸成功!) 我的理解是: 1.每天晚上我们都

这是我的第一个问题,我不知道如何根据指导方针与其他人相关。我想最后的一个问题是,noob是否应该尝试干预他们不完全理解的代码

我的站点依赖于在别处生成的xml数据库,该数据库被拼接成特定于站点的格式,由原始开发人员设置。生成数据库的系统将标签从“联系人”更改为“个人”,打破了拼接的数据公式。(Grr.)

我认为我已经修复了它,因为我更改了接收文件中的标记,但是拼接器刚刚完全停止。(基本上,我对网站/编码的了解还不够,没有尝试过做这些更改。但我想我可以侥幸成功!)

我的理解是: 1.每天晚上我们都会将一个xml文件发送到文件夹中 2.php文件使用SimpleXmlIterator重新格式化原始xml。 3.将重新格式化的文件发送到staging.sql文件。 4.这会将其发送到正确的位置,供站点每晚加载

第4步仍在进行,但站点正在反复使用相同的数据。新数据只是没有通过第2步和第3步

这就是我所做的(我只是注释掉了原始代码。我是“SOC”):

我还将staging.sql和staging.tgz中的“contact”改为“person”

-- ----------------------------
--  Records of `exp_dd_doc_sections`
-- ----------------------------
BEGIN;
INSERT INTO `exp_dd_doc_sections` VALUES (…….<td>contact_first_name, contact_surname</td>\n         <td>Text Input</td>\n           <td>Would enter author full name, this field would only be used for admin purposes.</td>\n          <td>y</td>\n        </tr>\n     <tr>\n          <td>Author Biblio ID</td>\n         <td>author_biblio_id</td>\n         <td>id</td>\n           <td>Text Input</td>\n           <td>Used for relationship building and reference only</td>\n            <td></td>\n     </tr>\n     <tr>\n          <td>Author First Name</td>\n            <td>author_fname</td>\n         <td>contact_first_name</td>\n           <td>Text Input</td>\n           <td></td>\n         <td></td>\n     </tr>\n     <tr>\n          <td>Author Last Name</td>\n         <td>author_lname</td>\n         <td>contact_surname</td>\n          <td>Text Input</td>\n           <td></td>\n         <td></td>\n     </tr>\n ………)
——----------------------------
--“exp\u dd\u doc”章节的记录`
-- ----------------------------
开始;
插入“exp\u dd\u doc\u节”值(……联系人姓名、联系人姓氏\n文本输入\n将输入作者全名,此字段仅用于管理目的。\n y\n\n\n作者图书ID\n作者图书ID\n ID\n文本输入\n用于建立关系和仅供参考\n\n\n\n作者名\n作者名\n联系人\n姓名\n文本输入\n\n\n\n\n作者姓\n作者名\n联系人\n姓氏\n文本输入\n\n\n\n……)
有人知道我做的哪一点破坏了系统,以及我能做些什么来恢复它吗? 我尝试过用原始文件覆盖我的更改,但没有帮助


非常感谢您的指导。

听起来您需要一些基本的故障排除

可能您的解析工作正常,但由于文件权限或其他原因,不同位置之间的传输失败

反向工作:

您能否确认在步骤4中传输的文件是新文件?是否具有预期的修改日期?是否具有预期的数据

能否确认步骤3 staging.sql中的文件是具有预期修改日期的新文件?它是否具有预期数据

您能否确认在步骤2中创建的文件是一个具有预期日期和数据的新文件


您是否在错误日志中看到任何提示脚本中的任何内容失败的信息?

非常感谢您的回复。Hrm..这显然不是进行回复的地方。好吧,也许是吧!我只是无法点击return。我正在进行彻底的回复。我不知道如何在这个评论框中包含图像。我可以看到原始数据放在应该生成的地方。但是我可以看到应该生成的xml.php文件还没有生成。我不知道如何查看我的错误日志。我看到的文件只是通过Filezilla查看服务器。我认为你不能将图像添加到注释框中;但是你可以更新你的问题。apache错误日志可以是真实的除了这里最常见的地方:
/var/log/httpd/yourdomin.com/error.log
。你的脚本没有引用名为
xml.php
的文件。你能澄清一下吗?我找不到我的错误日志-或者,我可以找到很多空的错误日志,但这些都是针对mysql的。xml.php文件就是我所做更改的文件。
-- ----------------------------
--  Records of `exp_dd_doc_sections`
-- ----------------------------
BEGIN;
INSERT INTO `exp_dd_doc_sections` VALUES (…….<td>contact_first_name, contact_surname</td>\n         <td>Text Input</td>\n           <td>Would enter author full name, this field would only be used for admin purposes.</td>\n          <td>y</td>\n        </tr>\n     <tr>\n          <td>Author Biblio ID</td>\n         <td>author_biblio_id</td>\n         <td>id</td>\n           <td>Text Input</td>\n           <td>Used for relationship building and reference only</td>\n            <td></td>\n     </tr>\n     <tr>\n          <td>Author First Name</td>\n            <td>author_fname</td>\n         <td>contact_first_name</td>\n           <td>Text Input</td>\n           <td></td>\n         <td></td>\n     </tr>\n     <tr>\n          <td>Author Last Name</td>\n         <td>author_lname</td>\n         <td>contact_surname</td>\n          <td>Text Input</td>\n           <td></td>\n         <td></td>\n     </tr>\n ………)