|
|
|
|
||||||
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 (permalink) |
|
Messages: n/a
Hébergeur: |
Hi I'm a newbie to php and I'm using require_once($_SERVER['DOCUMENT_ROOT']."/includes/class.announcement.php"); to import pages in php. This works fine on a windows environment. However when I move this application to a linux environment the files dont get imported properly. This is because in a windows environment $_SERVER['DOCUMENT_ROOT'] returns c:/xampp/htdocs etc. but in a linux environment returns /home/servers etc. How can this be rectified so that the path is properly picked up in a linux environment -- View this message in context: http://www.nabble.com/setting-the-do...html#a12771923 Sent from the PHP - General mailing list archive at Nabble.com. |
|
|
|
#2 (permalink) |
|
Messages: n/a
Hébergeur: |
tbt wrote:
> Hi > > I'm a newbie to php and I'm using > > require_once($_SERVER['DOCUMENT_ROOT']."/includes/class.announcement.php"); > > to import pages in php. This works fine on a windows environment. However > when I move this application to a linux environment the files dont get > imported properly. This is because in a windows environment > $_SERVER['DOCUMENT_ROOT'] returns c:/xampp/htdocs etc. > but in a linux environment returns /home/servers etc. > > How can this be rectified so that the path is properly picked up in a linux > environment Don't rely on document root. I'm surprised it worked on windows, you were lucky - 90% of the time it's not there or not correct anyway. If it's in the same directory as the current file, do: require(dirname(__FILE__) . '/includes/class.announcement.php'); __FILE__ is a built in constant that tells you the full path to the current file. dirname() takes the filename out of that and gives you just the current directory (see http://www.php.net/dirname ). Then add the rest of the on the end. -- Postgresql & php tutorials http://www.designmagick.com/ |
|
|
|
#3 (permalink) |
|
Messages: n/a
Hébergeur: |
On 19 Sep., 09:11, nadeesh...@yahoo.com (tbt) wrote:
> when I move this application to a linux environment the files dont get > imported properly. This is because in a windows environment > $_SERVER['DOCUMENT_ROOT'] returns c:/xampp/htdocs etc. > but in a linux environment returns /home/servers etc. what's wrong with /home/servers/bla/blubb/omething? |
|
|
|
#4 (permalink) |
|
Messages: n/a
Hébergeur: |
tbt wrote:
> Hi > > I'm a newbie to php and I'm using > > require_once($_SERVER['DOCUMENT_ROOT']."/includes/class.announcement.php"); > > to import pages in php. This works fine on a windows environment. However > when I move this application to a linux environment the files dont get > imported properly. This is because in a windows environment > $_SERVER['DOCUMENT_ROOT'] returns c:/xampp/htdocs etc. > but in a linux environment returns /home/servers etc. > > How can this be rectified so that the path is properly picked up in a linux > environment are you running apache on windows and linux? if so, setup a .htaccess file that has a line in it that modifies the php include path place that .htaccess at your web root and you won't have to play with paths, you would call require_once 'includes/class.announcement.php'; instead Fix your include paths and you wont have to worry if the system will have what it should in the $_SERVER['DOCUMENT_ROOT']. -- Jim Lucas "Some men are born to greatness, some achieve greatness, and some have greatness thrust upon them." Twelfth Night, Act II, Scene V by William Shakespeare |
|
![]() |
| Outils de la discussion | |
|
|