Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Помогите с подключением include
Форумы портала PHP.SU » PHP » Программирование на PHP » Помогите с подключением include

Страниц (1): [1]
 

1. steb - 01 Марта, 2013 - 10:23:40 - перейти к сообщению
Здравствуйте! Друзья помогите у меня не работает подключение страницы по include, вот код :

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $urlsite = 'http://test1.ru';
  3. include ($urlsite."/includes/right.php");
  4. ?>


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

Что здесь не так?
2. avtor.fox - 01 Марта, 2013 - 10:38:41 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. include $_SERVER['DOCUMENT_ROOT'].'/includes/right.php';
3. steb - 01 Марта, 2013 - 10:58:04 - перейти к сообщению
Не работает. Работает только в том случае если я файл закидываю в директорию и просто прописываю:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. include 'includes/right.php';
  3. ?>


а с ссылкой не пашет.
4. esterio - 01 Марта, 2013 - 11:18:33 - перейти к сообщению
steb пишет:
а с ссылкой не пашет.

А оно и не должно работать. При include Вы работает с файловой системой.
5. steb - 01 Марта, 2013 - 11:54:27 - перейти к сообщению
Спасибо всем за помощь, я разобрался!
6. DelphinPRO - 01 Марта, 2013 - 11:58:10 - перейти к сообщению
steb пишет:
Не работает.

даю наводку

__DIR__ - это путь к файлу, в котором эта самая константа упомянута.

realpath - преобразует относительные пути в абсолютные


решение

структура каталогов (пример)
CODE (text):
скопировать код в буфер обмена
  1. /
  2. --index.php
  3. --includes/
  4. ----right.php
  5. --otherdir/
  6. ----otherfile.php


в index.php пишем так
PHP:
скопировать код в буфер обмена
  1. $file = realpath(__DIR__ . '/' . 'includes/right.php');
  2. include $file;


в otherfile.php пишем так
PHP:
скопировать код в буфер обмена
  1. $file = realpath(__DIR__ . '/../' . 'includes/right.php');
  2. include $file;


ps символ "/" (слэш) можно заменить константой DIRECTORY_SEPARATOR
7. steb - 01 Марта, 2013 - 12:56:23 - перейти к сообщению
DelphinPRO пишет:
даю наводку


Благодарю, работает!

 

Powered by ExBB FM 1.0 RC1