Solved

Include path with ./ in PHP

Posted on 2009-04-06
6
269 Views
Last Modified: 2012-05-06
If I have an index.php in say:
   c:\wamp\www\myfolder\index.php

that is calling an include() in a sub directory say:
   include_once('subfolder\file.php')   which translates into c:\wamp\www\myfolder\subfolder\file.php

and inside file.php it is calling an include like:
include_once('./different_file.php');

then it goes back to c:\wamp\www\myfolder\ to try and find it . How can I force it so that include('./anything.php') stays inside the most recent folder it was called from, and not the first?

NOTE: It's important to know that I can't edit file.php, It has to maintain it's include with the ./
0
Comment
Question by:level9wizard
  • 2
  • 2
  • 2
6 Comments
 
LVL 39

Accepted Solution

by:
Roger Baklund earned 500 total points
ID: 24078369
Maybe you can use chdir(), like this:

chdir('subfolder') ;
include_once('file.php');

Then the call to include_once('./different_file.php') will happen within subfolder. In case you use file functions later in the script, you should call chdir() again to set it back to the folder with the script after the include (in index.php):

chdir('..') ;  # one step up

0
 
LVL 11

Author Comment

by:level9wizard
ID: 24078431
>>Maybe you can use chdir()

Problem is, as you saw above, I can't edit file.php - I will consider how I might be able to access this from outside though.
0
 
LVL 20

Expert Comment

by:Gawai
ID: 24078814
>> and inside file.php it is calling an include like:
include_once('./different_file.php');

if u cant edit file.php, how did u know whats inside  that file ?
0
Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

 
LVL 20

Expert Comment

by:Gawai
ID: 24078835
the option is place different_file.php in c:\wamp\www\myfolder
0
 
LVL 39

Expert Comment

by:Roger Baklund
ID: 24079280
>> I can't edit file.php

My suggestion involved editing index.php only...
0
 
LVL 11

Author Comment

by:level9wizard
ID: 24079363
>> My suggestion involved editing index.php only...

Yea sorry I didn't reply to your first remarks properly - In fact you've solved it really. I'll likely have to ask another question based on this one however.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Part of the Global Positioning System A geocode (https://developers.google.com/maps/documentation/geocoding/) is the major subset of a GPS coordinate (http://en.wikipedia.org/wiki/Global_Positioning_System), the other parts being the altitude and t…
Introduction This article is intended for those who are new to PHP error handling (https://www.experts-exchange.com/articles/11769/And-by-the-way-I-am-New-to-PHP.html).  It addresses one of the most common problems that plague beginning PHP develop…
The viewer will learn how to count occurrences of each item in an array.
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

831 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question