Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 01.08.2011, 16:34
TTS вне форума Посмотреть профиль Отправить личное сообщение для TTS Найти все сообщения от TTS
  № 1  
Ответить с цитированием
TTS
 
Аватар для TTS

Регистрация: Jan 2002
Сообщений: 1,323
По умолчанию php_self для включенного файла

Что-то я невъезжаю, вроде задачка простая.
есть папка на сервере, допустим, /folder
в ней файл, допустим file.php и стиль style.css, который прописан обычным образом:
Код:
<link rel="stylesheet" href="style.css" type="text/css">
еще есть файл /index.php, в котором есть команда include('folder/file.php')

если я в браузер гружу file.php, то он прекрасно цепляет стиль, а если index.php, то стиль в пролете.
Так вот, че делать? Могу жестко прописать полный путь href="/folder/style.css" и проблема решена. Но это некошерно, т.к. при если я через полгода вздумаю изменить название папки, придется сначала втыкать, почему перестало работть, а потом переписывать путь.

Ход мыслей примерно таков: надо писать что-то вроде:
Код:
<link rel="stylesheet" href="<?php
echo dirname($_SERVER["PHP_SELF"]);
?>/style.css" type="text/css">
но оказывается все, что может дать $_SERVER, относится в включающему, но не к включаемому файлу, даже упомянутый PHP_SELF, что, если честно, меня удивило.
Единственное, что я нашел с путем к file.php - это __FILE__, но это будет реальный путь, от него толку нет. Сделать из него нормальный я пытался, вычтя из него DOCUMENT_ROOT:
Код:
substr(__FILE__, strlen($_SERVER['DOCUMENT_ROOT']));
Но оказалось, что корень у них разный:
Код:
$_SERVER["DOCUMENT_ROOT"] = /var/www/clients/...
__FILE__ = /home/www/clients/....
Как победить эту бадягу?
__________________
ВКЛЮЧИ МОЗГИ!!!
Одноразовых граблей не бывает. На большинство из них уже кто-то наступал. (c) Dindin

Старый 01.08.2011, 16:45
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 2  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Указать относительный путь к style.css от корня сайта.

Добавлено через 1 минуту
Код:
<link rel="stylesheet" href="/folder/style.css" type="text/css">
__________________
משיח לא בא
משיח גם לא מטלפן

Старый 01.08.2011, 18:03
TTS вне форума Посмотреть профиль Отправить личное сообщение для TTS Найти все сообщения от TTS
  № 3  
Ответить с цитированием
TTS
 
Аватар для TTS

Регистрация: Jan 2002
Сообщений: 1,323
Цитата:
Сообщение от alatar Посмотреть сообщение
Указать относительный путь к style.css от корня сайта.

Добавлено через 1 минуту
Код:
<link rel="stylesheet" href="/folder/style.css" type="text/css">
Ну да, понимаю, много букв написал
Цитата:
Могу жестко прописать полный путь href="/folder/style.css" и проблема решена. Но это некошерно, т.к. при если я через полгода вздумаю изменить название папки, придется сначала втыкать, почему перестало работть, а потом переписывать путь.
__________________
ВКЛЮЧИ МОЗГИ!!!
Одноразовых граблей не бывает. На большинство из них уже кто-то наступал. (c) Dindin

Создать новую тему Ответ Часовой пояс GMT +4, время: 18:58.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 18:58.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.