Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Нужна помощь по include
 
 автор: Poul   (16.11.2007 в 08:21)   письмо автору
 
 

Возникла проблема с этой функцией. У меня сайт расположен на локальном компе, в данный момент на моем. Файл index.php находится по адресу z:/home/test2.ru/www/index.php выход в инет осуществляется через прокси, поэтому в настройках прописано не использовать прокси сервер для адреса test2.ru. при вводу в строку браузера http://test2.ru загружается без проблем index.php, но есть одна проблема. в файле есть include ('link.php'), link.php находится в тойже папке что и index, так вот вопрос:
при прописании

include ('link.php')

- все работает
при написании

include ('z:/home/test2.ru/www/link.php')

- работает
а при написании

include ('http://test2.ru/link.php')

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

   
 
 автор: Саня   (16.11.2007 в 08:37)   письмо автору
 
   для: Poul   (16.11.2007 в 08:21)
 

В последнем случае подключается результат работы скрипта, а не его исходник.

   
 
 автор: Poul   (16.11.2007 в 08:47)   письмо автору
 
   для: Саня   (16.11.2007 в 08:37)
 

Я так понимаю что сделать с этим ничего не получится? тогда как быть? ну в index.php я могу просто написать include ('link.php'), но у меня еще есть файлы скажем www/document/function.php в которых тоже нужен этот link.php, а оращение получается к файлу на уровень выше, и у меня сейчас аписано

include ('./link.php');

это неудобно, и что делать если будем распологать его не у себя а у хостера? как тогда путь прописывать для файлов которые лежат ниже по уровню?

   
 
 автор: RV   (16.11.2007 в 10:10)   письмо автору
 
   для: Poul   (16.11.2007 в 08:47)
 

include инклудит содержание только локальных файлов. если файл находится на другом сервере - только его результат.

include ("../../../link.php");

link.php находится 3мя уровнями ниже.

   
 
 автор: Poul   (16.11.2007 в 10:35)   письмо автору
 
   для: RV   (16.11.2007 в 10:10)
 

Понятно, спасибо, у меня так сейчас и написано, просто думал что можно указать путь другим способом, потому как при переноси файла link.php придется менять путь во всех файлах которые его инклудят, это очень неудобно, потому как у меня файлов функций и форм уже около полусотни, а будет еще больше...

   
 
 автор: Thrasher   (16.11.2007 в 11:22)   письмо автору
 
   для: Poul   (16.11.2007 в 10:35)
 

Пропишите путь к link.php в переменную или константу. Тогда при его переносе нужно будет только подправить эту константу и все.

define("LINK_PATH", "/папка/другая_папка/");

include(LINK_PATH."link.php");

   
 
 автор: Poul   (16.11.2007 в 12:16)   письмо автору
 
   для: Thrasher   (16.11.2007 в 11:22)
 

это уже есть, но оно работает если стоит на локальном компе, где я знаю адрес диска выделенного под сервер, а как быть если все будет перенесено к хостинг провайдеру, указывая скажем

define("LINK_PATH", "http://domen.ru/"); 

include(LINK_PATH."link.php");

работать я так понимаю не будет, а надо писать

include("../../link.php");

а если я поменяю структуру и перенесу этот файл на уровень ниже или выше, как быть в таком случае?

   
 
 автор: bronenos   (16.11.2007 в 12:49)   письмо автору
 
   для: Poul   (16.11.2007 в 12:16)
 

./ - текущая директория
../ - уровень вверх
/ - корень

   
 
 автор: Thrasher   (16.11.2007 в 12:52)   письмо автору
 
   для: Poul   (16.11.2007 в 12:16)
 

И у хостера работать будет точно также.
/ - корневая папка вашего сервера у хостера.
http://domen.ru/ - так писать нельзя.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования