PHP 个页面在 Joomla! 3.x

PHP pages in Joomla! 3.x

我正在构建 Joomla! 3.3.6 网站,我想把我做的一个工具放进去。 我知道有很多插件可以让我在 Joomla! 的模块中编写 PHP 或 JavaScript,但是这个工具使用 dompdf 库并且有很多 .js 和 .php文件,因此以这种方式集成它可能非常困难(如果不是不可能的话)。

所以我需要把它放在一个目录中,并给他和其他 Joomla! 相同的访问限制和用户控制。网站。我需要在这些页面中放置一个代码来检查用户是否已登录,在这种情况下,获取用户的 id/username。在一些操作之后,页面需要将信息保存在 Joomla! 的数据库中,在用户的 table 中(使用用户的 id 作为参考)。

我发现这个脚本应该可以完成这项工作:

<?php
    define( '_JEXEC', 1 );
    define('JPATH_BASE', __DIR__);
    require_once ( JPATH_BASE .'/includes/defines.php' );
    require_once ( JPATH_BASE .'/includes/framework.php' );
    $app = JFactory::getApplication('site');
    $db = JFactory::getDbo(); 
    $user = JFactory::getUser();
    $profile = JUserHelper::getProfile($user->id);
?>

但添加

require_once ( JPATH_BASE .'/includes/defines.php' );
require_once ( JPATH_BASE .'/includes/framework.php' );

导致页面加载空白。

有没有办法做我需要或不需要的?

这仅仅意味着 JPATH_BASE 没有被正确定义。空白页面意味着您的页面上有错误,但您需要启用错误报告。

尝试改变这个:

define('JPATH_BASE', __DIR__);

对此:

define( 'JPATH_BASE', realpath(dirname(__FILE__).'/..' ));