простой ламерский вопрос про include на php

skat
На сайте с 02.08.2005
Offline
104
648

наверняка кто то уже сталкивался, проблема простая (вроде бы)

нужно вставить кусок html кода который записан в файле inc.shtml в страницы

расположенные в разных папках на разных уровнях от корня.

inc.shtml расположен в папке /inc

раньше все было на ssi и все было просто:

<!--#include virtual="/inc/inc.shtm"--> и все работало на любой странице, где бы она ни расоплагалась.

а теперь в коде всех страниц есть вот такой код:

<?php include("inc.shtm"); ?>

как правильно указать путь в include, чтобы все работало? нужно чтобы путь быд везде

одинаковый, потому что страниц немеряно и операция будет происходить при помощи

"найти и заменить" в PHPedit.

если конечно это реально. подскажите плиз.

Saturnus
S
На сайте с 26.04.2006
Offline
86
#1

Можно использовать вот такой код:

<?php include ($_SERVER["DOCUMENT_ROOT"]."/inc/inc.shtm"); ?>

код будет не изменен, где бы не находился файл, в который производится вставка кода.

deleon
На сайте с 16.09.2004
Offline
173
#2
Strom:
Можно использовать вот такой код:
<?php include ($_SERVER["DOCUMENT_ROOT"]."/inc/inc.shtm"); ?>
код будет не изменен, где бы не находился файл, в который производится вставка кода.

Этот способ не у всех хостеров работает при вызове скрипта через cron, а так все правильно.

Еще, как вариант, есть надежный способ использования относительных путей:

include(dirname(__FILE__).'/inc.shtml');

Ну и не забываем, что если нам не нужен результат подключаемого скрипта, испозьзуем директивы require или require_once 🚬

to4kaRU
На сайте с 01.09.2005
Offline
14
#3
skat:
а теперь в коде всех страниц есть вот такой код:

<?php include("inc.shtm"); ?>

Тогда можно еще попробовать в .htaccess'e добавить директиву include_path для директории, где лежит inc.shtml.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий