使用PHP脚本上传文章到Joomla 3.6

3

过去几年中,我们使用一款本地应用程序将文章上传到我们的Joomla主页(使用PHP脚本)。在最新的Joomla 3.6更新后(之前是3.5),该应用程序不再起作用。出现以下错误:

Error displaying the error page: Application Instantiation Error: Failed to start the session because headers have already been sent by "/var/www/DOMAIN/htdocs/FOLDER/execute.php" at line 1.

以前在./htdocs/FOLDER/administrator/includes/目录下有一个名为"application.php"的文件,在更新后该文件消失了。看起来脚本无法创建应用程序实例。我已经尝试使用后端选项修复数据库,但这并没有解决问题。

更新:上述错误发生在:

$mainframe = JFactory::getApplication('administrator'); 

非常感谢您的帮助!


请问您能否粘贴一下您用于更新文章的代码? - Joomler
我目前没有代码访问权限,正在等待我的同事将它发送给我。(他负责维护该应用程序和进行脚本编写)。 - Phil
3.6更新是否存在已知问题,可能与我的问题有关? - Phil
1个回答

2

"/var/www/DOMAIN/htdocs/FOLDER/execute.php"正在输出一些文本,可能是第一行的空白字符。在发送任何头之前,请检查是否有任何输出。

解决方法不太好,但您也可以在header函数之前清除输出缓冲区。请阅读ob_clean()


谢谢你提供的关于空格和ob_clean()的提示,我会尽快尝试并更新大家。 - Phil
不用担心,Phil。如前所述,ob_clean并不是解决问题的真正方法。我建议在错误发生之前调用exit,并检查响应以检查数据/输出。将exit向上移动代码,直到找到输出消失的位置。 - atoms

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接