我是一个新手,但正在努力学习。
我有一个脚本来读取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_BASE
路径错误。
当你在根目录下时,它看起来像。
define('JPATH_BASE', dirname(__FILE__) );
在你的例子中,你在子文件夹中所以它看起来像。
define('JPATH_BASE', dirname(dirname(__FILE__)) );
那么你的最终代码将看起来像。
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();