Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php joomla工厂获取用户_Php_Joomla - Fatal编程技术网

Php joomla工厂获取用户

Php joomla工厂获取用户,php,joomla,Php,Joomla,您好,我在我的应用程序上收到以下错误消息,该应用程序在来自joomla应用程序的iframe中运行,并从joomla会话获取用户详细信息: 警告:ini_set():会话处于活动状态。您不能更改会话 此时模块的ini设置在 /home/sites/accstats.co.uk/public_html/libraries/joomla/session/handler/joomla.php 在线45 id:973 这就是我正在使用的代码,它在joomla的旧版本中一直运行良好,我不是开发人员(只是业

您好,我在我的应用程序上收到以下错误消息,该应用程序在来自joomla应用程序的iframe中运行,并从joomla会话获取用户详细信息:

警告:ini_set():会话处于活动状态。您不能更改会话 此时模块的ini设置在 /home/sites/accstats.co.uk/public_html/libraries/joomla/session/handler/joomla.php 在线45 id:973

这就是我正在使用的代码,它在joomla的旧版本中一直运行良好,我不是开发人员(只是业余爱好者),所以我不确定问题出在哪里

define( '_JEXEC', 1 );
define( 'DS', DIRECTORY_SEPARATOR );
define('JPATH_BASE', "/home/sites/accstats.co.uk/public_html/" );

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

$mainframe = JFactory::getApplication('site');
$mainframe->initialise();

$user = JFactory::getUser();

if($user->id)


// log in
{
        $_SESSION["UserID"] = $user->get("username");
        $groups = $user->get('groups');
        $_SESSION["GroupID"] = reset($groups);
        $_SESSION["UserName"] = $user->get("name");
        if ($user->get('isRoot')) $_SESSION["AccessLevel"] = ACCESS_LEVEL_ADMINGROUP;
        else $_SESSION["AccessLevel"] = ACCESS_LEVEL_USER;
}
else 
// log out
{
        $_SESSION["UserID"] = "";
        $_SESSION["AccessLevel"] = "";
        $_SESSION["GroupID"] = "";
        $_SESSION["UserName"] = "";
}

我也有同样的问题。当我移动到live server时,我的AJAX文件都不起作用。在花了几个小时之后,我发现这是一个URL问题。所以通过修正JPATH_基来解决这个问题。我看你已经给出了这个参数的绝对路径。你为什么不这样定义它:

define( '_JEXEC', 1 );

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

// including the main joomla files
require_once ( JPATH_BASE . '/includes/defines.php' );
require_once (  JPATH_BASE . '/includes/framework.php' );
require_once (  JPATH_BASE . '/configuration.php' );

// Creating an app instance
$app = JFactory::getApplication('site');
$app->initialise();
jimport( 'joomla.user.user' );
jimport( 'joomla.user.helper' );

如果它不适合您,您可以更改代码行2的斜杠数。我复制并粘贴了我遇到问题的应用程序的标题,并解决了它。希望对你也有用。

我也有同样的问题。当我移动到live server时,我的AJAX文件都不起作用。在花了几个小时之后,我发现这是一个URL问题。所以通过修正JPATH_基来解决这个问题。我看你已经给出了这个参数的绝对路径。你为什么不这样定义它:

define( '_JEXEC', 1 );

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

// including the main joomla files
require_once ( JPATH_BASE . '/includes/defines.php' );
require_once (  JPATH_BASE . '/includes/framework.php' );
require_once (  JPATH_BASE . '/configuration.php' );

// Creating an app instance
$app = JFactory::getApplication('site');
$app->initialise();
jimport( 'joomla.user.user' );
jimport( 'joomla.user.helper' );

如果它不适合您,您可以更改代码行2的斜杠数。我复制并粘贴了我遇到问题的应用程序的标题,并解决了它。希望它也适用于您。

您是否检查了session.autostart?然后呢?您正在使用mod spdy模块吗?如果在文件开头添加会话开始,会发生什么情况?首先,您不需要向我们添加会话开始。DS。在大多数情况下,因为Windows不再有处理*nix斜杠的问题。但是第二。。在我看来,您有一个双斜杠,因为您在JPATH_BASE的末尾有一个斜杠,然后在追加下一段之前有一个
.DS.
。您是否检查了session.autostart?然后呢?您正在使用mod spdy模块吗?如果在文件开头添加会话开始,会发生什么情况?首先,您不需要向我们添加会话开始。DS。在大多数情况下,因为Windows不再有处理*nix斜杠的问题。但是第二。。在我看来,您有一个双斜杠,因为您在JPATH_BASE的末尾有一个斜杠,然后在追加下一段之前有一个
.DS.