![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Brothernone |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 22.7.2005 Где: Украина Репутация: нет Всего: нет |
как это исправить:
Warning: main(header.php): failed to open stream: No such file or directory in z:\home\test.com\www\catalog\catalog.php on line 4 Warning: main(): Failed opening 'header.php' for inclusion (include_path='.;/usr/local/php/PEAR') in z:\home\test.com\www\catalog\catalog.php on line 4 Дело в том, что в header.php у меня есть строка: $url="http://www.test.com/"; и во всех остальных файлах я его вставляю таким образом: include($url."header.php"); Самое главное: если файлы лежат в одной директории с хедером - то ошибка не возникает. Если в поддиректориях - возникает! Подскажите, как это исправить. Это сообщение отредактировал(а) Brothernone - 16.8.2006, 19:19 |
|||
|
||||
| Rock |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 264 Регистрация: 13.1.2005 Где: Краснодар Репутация: 0 Всего: 1 |
просто переменная $url существует только в header.php
В твоем случае
надо прописывать во всех скриптах Это сообщение отредактировал(а) Rock - 16.8.2006, 19:34 |
|||
|
||||
| alergi |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 14.8.2006 Где: МОСКВА Репутация: нет Всего: нет |
||||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 1 Всего: 128 |
Если файл находится в подкаталогах, и ты работаешь с ними, то подключение файла из другого каталога требует указания полного пути к файлу, либо (это лучше, я думаю), указывать переход на директорию назад, вот так:
Так будет производится подключение файла из каталога, расположенного уровнем выше. |
|||
|
||||
| Brothernone |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 22.7.2005 Где: Украина Репутация: нет Всего: нет |
Сейчас последний совет попробую.
Да, я подключаю через HTTP, а что? |
|||
|
||||
| cyberface |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 6.6.2006 Репутация: 3 Всего: 5 |
гыг... RTFM... мда... читайте мануал однако... протокол-то хттпшный заставит ваш файл выполнится.
|
|||
|
||||
| mr.Anderson |
|
||||||||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 1 Всего: 128 |
Brothernone, вообще, самая распространенная проблема - неверно указанная директория. Вот смотри. Например, твой сайт имеет структуру:
В каталоге catalog3 расположен файл test1.php, а в каталоге catalog1 - файл including.html. Представь, что в файле test1.php написан вызов второго файла:
Это не сработает, потому что этот файл будет разыскиваться в том же каталоге, в котором расположен сам test1.php. В этом случае придется писать примерно так:
Вроде, понятно объяснил? Добавлено @ 21:34 Кстати, судя по тому, что ты указываешь полный путь:
То ничего хорошего это не сулит. А вдруг адрес твоего сайта изменится? Представь, сколько придется исправлять, если твой сайт состоит из большого количества файлов? |
||||||||
|
|||||||||
| Brothernone |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 22.7.2005 Где: Украина Репутация: нет Всего: нет |
Не помогло - написало тоже самое.
Я в разделе для начинающих. Мож памагёте? Там, где читал - такого описано не было. |
||||
|
|||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 1 Всего: 128 |
Brothernone, повторю, экспериментируй с директориями. Попробуй поставить двойной переход:
|
|||
|
||||
| Brothernone |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 22.7.2005 Где: Украина Репутация: нет Всего: нет |
Ясно. Буду экспериментировать.
А по поводу "адрес сайта изменится". Смотрите, если я меняю свой сайт с test.com, на microsoft.com, то мне всего лишь надо изменить эту переменную:
Ведь так? |
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 1 Всего: 128 |
Да так-то так... Ну, в общем-то, и так можно...
А вообще, во избежание проблем - дай полные точные пути к файлу, который ты подключаешь, и к файлу, в котором написано include (пути укажи начиная от папки public_html твоего сайта). А там посмотрим. |
|||
|
||||
| Muchenik |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 27.10.2005 Репутация: 5 Всего: 5 |
Что непонятного?
Если скрипт находится в поддиректории относительно header.php: ./header.php ./dir1/scr.php то в scr.php вызываешь
|
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 1 Всего: 128 |
muchenik, мы тут про это и толкуем.
|
|||
|
||||
| Brothernone |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 22.7.2005 Где: Украина Репутация: нет Всего: нет |
Я пока в Денвере. Соответственно, вот так:
test.com/www/header.php - это файл, который я инклюдю test.com/www/catalog/cat.php - а это, в котором вызываю функцию инклюд. |
|||
|
||||
| Muchenik |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 27.10.2005 Репутация: 5 Всего: 5 |
Просто я еще не видел чтоб кто то нормально две точки показал Ааа, ты там точку забыл Это сообщение отредактировал(а) Muchenik - 16.8.2006, 21:55 |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |