Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.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_External - Fatal编程技术网

Php 如果不是在根目录中,访问Joomla环境脚本将失败

Php 如果不是在根目录中,访问Joomla环境脚本将失败,php,joomla,external,Php,Joomla,External,我是个新手,但我正在努力学习 我有一个脚本来阅读joomla用户的详细信息。这是一个只显示登录用户名的简单脚本。如果我把脚本放在我网站的根目录中,它就会工作 我要做的是从根目录下的文件夹运行脚本,例如/ssscart 当我将脚本放入子目录时,它不会执行 这是我的剧本: <?php define( '_JEXEC', 1 ); define('JPATH_BASE', dirname(__FILE__) ); define( 'DS', '/' ); require_once ( JPAT

我是个新手,但我正在努力学习

我有一个脚本来阅读joomla用户的详细信息。这是一个只显示登录用户名的简单脚本。如果我把脚本放在我网站的根目录中,它就会工作

我要做的是从根目录下的文件夹运行脚本,例如/ssscart

当我将脚本放入子目录时,它不会执行

这是我的剧本:

<?php
define( '_JEXEC', 1 );
define('JPATH_BASE', dirname(__FILE__) );
define( 'DS', '/' );

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

JFactory::getApplication('site')->initialise();

$user = JFactory::getUser();
$joomla_name = $user->name;
$joomla_email = $user->email;
$joomla_password = $user->password;
$joomla_username = $user->username;
echo 'hello';
echo " - ".$joomla_username;
?>
我相信我的问题出在JPATH_BASE条目中,但还没有找到答案

谢谢

G

试试这个

问题是由于JPATH_基本路径错误

当你在根的时候,它看起来像

定义'JPATH_BASE',dirname___文件

所以,在您的情况下,您在子文件夹中,所以它看起来像

define( '_JEXEC', 1 );
define('JPATH_BASE', dirname(dirname(__FILE__)) );
define( 'DS', '/' );

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

JFactory::getApplication('site')->initialise();
定义'JPATH_BASE',dirnamedirname__文件

因此,您的最终代码将如下所示

define( '_JEXEC', 1 );
define('JPATH_BASE', dirname(dirname(__FILE__)) );
define( 'DS', '/' );

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

JFactory::getApplication('site')->initialise();

希望它能起作用。

谢谢你的回复,你说得对。非常感谢。