Joomla模块在本地工作,但在托管时不显示任何内容

时间:2009-11-13 07:23:05

标签: php migration joomla module

我是joomla的新手,我需要在joomla网站上为学校项目工作。我修改了一个现有模块,使其显示特色项目,当我在本地测试网站时,它完美无瑕。但是,当我将文件上传到网站的托管副本时,模块将加载但不显示任何内容。它只是加载php输出的标题和区域,但脚本没有返回任何内容。为什么会这样?我有joomla大多想通了但是当我遇到这个问题时我很难过。

据我所知,与该模块相关的所有文件都已成功复制,并在模块管理器中正确设置。我在托管副本上启用了调试模式,并在尝试加载包含此模块的其他页面时收到此消息:

  

解析错误:语法错误,意外   T_STRING in   /home/content/s/r/s/srsgdmnet/html/components/com_rbids/rbids.html.php   在第1行

我查看了文件,我不知道它在说什么。第一行只是“<?php”,这很好。它只是说第1行,但实际上指的是其他地方的问题?此文件是我的模块与之交互的反向拍卖组件的一部分。我没有修改该文件中的代码,除了使用正则表达式(使用“\ n \ s *(\ n)”搜索,替换为“\ n”)以通过replace命令删除过多的空格在Netbeans。这样可以从文件中删除大约3200行,使其更易于导航。我认为这并没有改变代码方面的任何内容,因为它在本地使用时仍能正常工作。

我修改了我的本地configuration.php文件以使用与托管副本相同的数据库来查看它是否是数据库问题,但它仍然正常工作,以便规则出来。两个副本上的php.ini文件是相同的,除了已经注释掉Zend东西的本地文件,所以我可以使用Xdebug(在尝试找到问题后发生了这个更改)。我已经使用Xdebug逐步完成了代码并且无法跟踪问题,所以我认为这是一个配置问题。

我的本​​地副本也没有加载某些模块(主菜单,一个),我无法导航到其他一些页面,不确定是否相关。两个副本的代码相同,但每个副本都有不同的结果。我是否正在跳过迁移代码的重要步骤?

我正在使用Joomla 1.5.9版。请帮忙!

3 个答案:

答案 0 :(得分:0)

你的问题已经十天了,所以也许你已经解决了。但我的建议是检查前向和反斜杠的代码。可能是代码使用\在本地工作但在您需要/的服务器上失败。在Joomla扩展中,您可以通过DS替换文件夹分隔,以'folder'.DS .ubfolder'而不是'folder / subfolder'的方式替换。 API将在\或/中替换DS。

但是,您获得的解析错误表明代码的语法中缺少某些内容。你只需要用一个放大镜玻璃来完成它。有时当错误引用第一行时,缺失的东西的影响会回到文件的开头。它可能是'或;或类似的东西。

无论您的模块如何,您都应该更新到Joomla 1.5.15版本,该版本目前是最新版本。你有6个安全版本落后于计划!

答案 1 :(得分:0)

尝试以传统方式关闭<?php并查看其是否有效或错误行更改。

我记得在Joomla或Fabrik论坛上看到过类似的问题但却记不起精确答案

答案 2 :(得分:0)

我一直在使用的小组已经得出结论,当我们编辑和保存它们时,Netbeans会以某种方式弄乱一些文件。我们通过从服务器获取文件,打开然后保存在Netbeans中,然后上传回服务器进行测试。有时候这个生成的文件显然没有任何新行,导致php错误,破坏组件甚至取消整个站点。

我们目前的解决方法是在发生这种情况时使用文件并使用notepad ++在上传之前进行更改。这是一个非常奇怪的问题,给我们带来了很多悲伤。希望Netbeans团队在未来的版本中修复此问题。

感谢大家帮助我解决这个问题的所有尝试。