Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как получить basehref? название не соответствует сути! :(( 
:(
    Опции темы
Alx
Дата 11.3.2004, 01:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ajaxy
****


Профиль
Группа: Комодератор
Сообщений: 2903
Регистрация: 26.11.2003
Где: Cutopia

Репутация: 6
Всего: 78



мне нужно вставлять конструкцией require (или include, я так и не понял, чем они различаются) на всех страницах сайта 5 кодов из внешних файлов. (шапка, бегущая строка с объявлениями, левый и правый столбцы с инфой и нижнюю часть) Это потому, что если я захочу что-то изменить или добавить, мне не пришлось менять на всех страницах. Я вначале делал на JavaScript. но оказалось, что этот внешний файл всё время кэшируется. Поэтому стал делать на PHP. Но появилась проблема: как из всех каталогов задать одинаковый basehref к файлам, которые располагаются в подкаталоге "files" корнего каталога. Ранбше у меня было

<base href="тырыпыры_корневой_каталог/index.php">
<script src="files/file.js"></script>

с PHP такого не пройдёт!

<?
include "files/file.js";
?>

работает только на страницах в корневом каталоге.
Вопрос: как сделать так, чтобы работало со всех каталогов, при одинаковом коде.
да, и

<?
include "тырыпыры_корневой_каталог/files/file.js";
?>

не проходит, т.к. мне потом придётся при выставлении в Инет и каждом переносе сайта менять "тырыпыры_корневой_каталог" на всех страницах!

ps - кто придумает подходящее название дшля темы - повышу рейтинг "за отличную сообразительность"!

Или это просто меня к часу ночи глючит?...


--------------------
PM MAIL WWW ICQ   Вверх
Kiber_rat
Дата 11.3.2004, 03:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MACMANIAC
**


Профиль
Группа: Участник
Сообщений: 276
Регистрация: 18.4.2002
Где: Ashdod, Israel

Репутация: 1
Всего: 9



А ты свое "тырыпыры" задавай как переменную в конфиг файле, а его кинь в корень :-)

config.inc
Код

// Path header :-)
$path="tiripiri\";



some.php
Код

include ("http://your.site.net/config.inc");
include ($path."/files/file.js");


Не слишком изящно, но работать должно, если я правильно понял проблему...
А тему назови - "проблемы с путями в include " wink.gif


--------------------
Best regards!                                                             
@..@_____Ku6ep
=*=______\______KPbIC
Код
print join "",map{chr}(split/(\w{2})/,hex(int(2175.57302796298**2)))
PM WWW ICQ Skype Jabber YIM   Вверх
IZ@TOP
Дата 11.3.2004, 08:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



Kiber_rat, только маленькая ошибочка, правильней не так:
Цитата
include ("http://your.site.net/config.inc");
include ($path."/files/file.js");

А так:
Цитата
include ("config.inc"); // Это с учетом того что config.php находится в одном каталоге с файлом в который он инклудится.
include ($path."/files/file.js");
Вообще config.php нужно кидать в корень, и инклудить его через index.php, соответственно все определенные в нем переменные будут видны и во всех остальных подгружаемых файлах.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Alx
Дата 11.3.2004, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ajaxy
****


Профиль
Группа: Комодератор
Сообщений: 2903
Регистрация: 26.11.2003
Где: Cutopia

Репутация: 6
Всего: 78



Цитата
Вообще config.php нужно кидать в корень, и инклудить его через index.php, соответственно все определенные в нем переменные будут видны и во всех остальных подгружаемых файлах.

не понял! можно поподробнее?

Код

include ("http://your.site.net/config.inc");
include ($path."/files/file.js");

при изменении домена, предётся менять всё равно на всех страницах!
и, кстати, я пробовал так, только у меня был файл не config.inc, а test.php с содержанием:

<?
$test = "tyrypyry";
?>

но переменная $test в главном файле была undefined!

Цитата
include ("config.inc"); // Это с учетом того что config.php находится в одном каталоге с файлом в который он инклудится.
include ($path."/files/file.js");

тогда config.inc нужно всё равно пихать во все каталоги, а потом менять! sad.gif

зы - я понимаю, что с <base href="tyrypyry/index.php"> тоже нужно было бы менять на всех страницах, но если у меня получится, что я щас хочу, то можно было бы сделать так:

<base href="<? echo $path; ?>/index.php">

Это сообщение отредактировал(а) ALEXANDRO - 11.3.2004, 10:43


--------------------
PM MAIL WWW ICQ   Вверх
Master
Дата 11.3.2004, 10:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1530
Регистрация: 13.5.2003
Где: Mother Russia

Репутация: 8
Всего: 10



а что... сложно написать прямой путь от корня сайта?


--------------------
Вавилон, Вавилон
Что ты построил, что разрушил?
Вавилон, Вавилон
Плавятся души дьявольским огнем.
PM WWW ICQ   Вверх
Alx
Дата 11.3.2004, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ajaxy
****


Профиль
Группа: Комодератор
Сообщений: 2903
Регистрация: 26.11.2003
Где: Cutopia

Репутация: 6
Всего: 78



Цитата
а что... сложно написать прямой путь от корня сайта?


жу-жу-жу, я сегодня торможу! smile.gif

можно поподробнее! smile.gif

прямой путь воть:

http://localhost/fuchsias.ru/files/file.php - к файлу
http://localhost/fuchsias.ru/index.php - к главной странице

а в Инете буит

http://fuchsias.ru/files/file.php
http://fuchsias.ru/index.php

и что мне на каждой странице менять? когда в Инет буду выставлять...


--------------------
PM MAIL WWW ICQ   Вверх
Master
Дата 11.3.2004, 13:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1530
Регистрация: 13.5.2003
Где: Mother Russia

Репутация: 8
Всего: 10



От документ рута...
/files/file.php

и не делай
http://localhost/fuchsias.ru/files/file.php

лучше создай отдельный виртуальный хост типа:
http://fuchsias/files/file.php


--------------------
Вавилон, Вавилон
Что ты построил, что разрушил?
Вавилон, Вавилон
Плавятся души дьявольским огнем.
PM WWW ICQ   Вверх
Alx
Дата 11.3.2004, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ajaxy
****


Профиль
Группа: Комодератор
Сообщений: 2903
Регистрация: 26.11.2003
Где: Cutopia

Репутация: 6
Всего: 78



у меня чё-то виртуальные хосты не работают! я пробовал.

а от документ рут не получица, потому что на локал хосте это localhost, a мне надо тогда уж localhost/fuchsias.ru


Цитата
у меня чё-то виртуальные хосты не работают

это моя главная проблема!

и потом почему ты написал

http://fuchsias/files/file.php

а не

http://fuchsias.ru/files/file.php

ведь в инете буит

http://fuchsias.ru/files/file.php

а иначе смысла нет, всё равно менять придётся!



--------------------
PM MAIL WWW ICQ   Вверх
Master
Дата 12.3.2004, 12:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1530
Регистрация: 13.5.2003
Где: Mother Russia

Репутация: 8
Всего: 10



Цитата
и потом почему ты написал

если ты хочеш чтобы у тебя вместо

http://fuchsias.ru/ открывался локальный ресурс, то в путь или лазий в хостовый файл операционик и постоянно его оттуда убирай, когда хочеш попасть на удаленный хост.

А про настройку виртуальных хостов ищи на:
http://php.spb.ru/


--------------------
Вавилон, Вавилон
Что ты построил, что разрушил?
Вавилон, Вавилон
Плавятся души дьявольским огнем.
PM WWW ICQ   Вверх
Alx
Дата 12.3.2004, 18:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ajaxy
****


Профиль
Группа: Комодератор
Сообщений: 2903
Регистрация: 26.11.2003
Где: Cutopia

Репутация: 6
Всего: 78



Цитата
http://fuchsias.ru/ открывался локальный ресурс, то в путь или лазий в хостовый файл операционик и постоянно его оттуда убирай, когда хочеш попасть на удаленный хост.


ты не правильно меня понял!

ой, я чувствую с PHP мне ещё намучиться!


--------------------
PM MAIL WWW ICQ   Вверх
Raptus Melanholicus
Дата 13.3.2004, 20:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 6.1.2004
Где: Kiev::Ua

Репутация: нет
Всего: нет



Ребята, вы чё?

Код

<?
include "./files/file.js";
?>


и всё
PM MAIL WWW ICQ   Вверх
Alx
Дата 13.3.2004, 21:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ajaxy
****


Профиль
Группа: Комодератор
Сообщений: 2903
Регистрация: 26.11.2003
Где: Cutopia

Репутация: 6
Всего: 78



и что?

ты уверен, что он вставит файл, расположенный

http://localhost/fuchsias.ru/files/file.php

во все файлы, расположенные

http://localhost/fuchsias.ru/dir/page.php

http://localhost/fuchsias.ru/another/dir/page.php

http://localhost/fuchsias.ru/index.php

и т.д.?

и так же если вместо "localhost/fuchsias.ru" будет "fuchsias.ru" (када в инет выставлю...)

нет, не думаю, что это сработает! smile.gif



--------------------
PM MAIL WWW ICQ   Вверх
Raptus Melanholicus
Дата 13.3.2004, 21:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 6.1.2004
Где: Kiev::Ua

Репутация: нет
Всего: нет



ALEXANDRO
smile.gif Не веришь, говоришь? Попробуй.
"./" это путь от корня сайта. Ты определись, где у тебя корень будет.
В твоём случае лучше на локалхосте всё сделать так, как будет в инете - либо выложить в корень весь сайт, либо только папки, из которых инклуд делаешь. Тогда ставь везде "./files/file.php" и при переносе никаких проблем не возникнет.
PM MAIL WWW ICQ   Вверх
Alx
Дата 14.3.2004, 10:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ajaxy
****


Профиль
Группа: Комодератор
Сообщений: 2903
Регистрация: 26.11.2003
Где: Cutopia

Репутация: 6
Всего: 78



а, т.е. ты хочешь, чтобы я папку был такой адрес:

localhost/files/file.php?

отличная идея! smile.gif сейчас, просто, на другом компе сижу, попробывать не могу, но домой приду обязательно попробую! smile.gif


--------------------
PM MAIL WWW ICQ   Вверх
IZ@TOP
  Дата 14.3.2004, 11:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



Не, ну народ Вы что тут? Какой include будет работать с http confused.gif mad.gif Вот допустим на виндовс, есть у нас корень сайта, который находится в папке www (c:\web\www\), это и есть корень сайта в котором лежит index.php, в файле config.php (который лежит в том же www) мы создаем константу ABS_PATH:
Цитата
define('ABS_PATH', dirname(__FILE__));

Функция dirname дает нам полный путь к файлу config.php, вот теперь у нас константа ABS_PATH = "c:\web\www", теперь остается пологаться только на нее - то есть мы config.php инклудим из всех файлов зависимых от определения данных в конфиге. Вот и все. А вообще если кто не знал есть такая переменная в РНР как $_SERVER['DOCUMENT_ROOT'], но на некоторых хостингах она заблочена и дает неверный путь к корню сайта.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1103 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.