Wednesday, 14 August 2013

php chdir() real functionality

php chdir() real functionality

i am working on a joomla module in which i am accessing external file(ajax
call) i was facing path issue "Fatal error: Class 'JFactory' not found in
C:" but finally after search for days i found the real solution. here is
the code
define( '_JEXEC', 1 );
chdir("../../");
getcwd();
define('JPATH_BASE', getcwd() );
define( 'DS', DIRECTORY_SEPARATOR );
require_once (JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
global $mainframe;
$mainframe =& JFactory::getApplication('site');
$mainframe->initialise();
now i am trying to understand whats going on in the code every thing is
clear except one point that how chdir("../../"); works?? is it change the
directory of the file that include that code?? (in my case its
getuser.php) or it change the paths of joomla core file like defines.php
and framework.php?? whats going on exactlly?? if you guys have any other
solution or change in existing code better then mine so please share it
with me i will be very thankfull.
also one thing more what will be the effect if i change
$mainframe =& JFactory::getApplication('site') to $mainframe =&
JFactory::getApplication('administrator')
as i changed it but it show no effect on the result.

No comments:

Post a Comment