Автор Тема: Мужики, подсобите пожалуйста разобраться с конструкцией >>>  (Прочитано 3104 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн DLama

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 65
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Вообщем есть шаблон include.php (не на классах а просто инклуды по условиям)
И когда идёт запрос типа Мой_сайт/?id=1111
тогда всё пучком, вставляеться где нужно страница с основным содержимым которое вытягиваеться с Мой_сайт/articles/1111.htm
Но мне надо что бы всё нормально работало когда так же идёт запрос типа Мой_сайт/раздел25/?id=1111
Пробовал в разделе25 разместить файл index.php
с содержимым:
include("../index.php?$QUERY_STRING");
?>
Результат - страница шаблона грузиться, но отрываеться вся графика и всё что в неё вставляеться на РНР. Ну, с графикой проще, я взял и заменил все пути типа "images/fon.gif" на "/images/fon.gif" и всё пучком, но самое то главное что скрипты в шаблоне не корректно выполняються, получаються что все пути надо переделывать относительно Мой_сайт/раздел25/ что ни как не решает задачу, так как нужно что бы была универсальная конструкция и для Мой_сайт/раздел25/ и для Мой_сайт/раздел25/подраздел3/
Думаю что есть решение данной задачки, только я его не знаю из-за слабого знания РНР и возможно изобретаю велосипед. Прошу помогите кто что знает или может решал подобное, буду весьма признателен

Оффлайн Britva

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1660
  • +0/-0
  • 0
    • Просмотр профиля
    • http://eugeny.com
Можно завести переменную, например $abspath = "/home/xxx/yyy/zzz/www"; - абсолютный путь.
и уже инклудить файлы как
include "$abspath/include.php";
...
include "$abspath/path1/file.php";
...
Евгений aka Razor,

Оффлайн DLama

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 65
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Спасибо Бритва, смысл понятен. Т.е. загнать в переменную абсолютный путь, но тут возникает другая кака. Пути дома (при отладке) и на реальном хосте разные, получаеться нужно присваивать другую переменную, т.е. этой переменной другое значение, как же такую ситуацию победить?

Оффлайн NAS

  • Неопытный юзер
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2951
  • +1/-0
  • 1
    • Просмотр профиля
    • http://nhouse.ru
Ну по-моему не сложно при закачке файла один раз исправить путь. Да и дома мона настроить путь как у хостера

Оффлайн DLama

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 65
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Спасибо мужики за советы, но решился вопрос (правда как то коряво) через вставку переменной $DOCUMENT_ROOT.
Не знаю как такие переменные называются, глобальные что ли?
Т.е. путь к вставляемому, запрашиваемому документу выглядит так
$DOCUMENT_ROOT/articles/2001/$dp.htm
и работает исправно и дома и на хосте прова по запросам
http://Мой_сайт/?dp=1102601
и
http://Мой_сайт/раздел25/?dp=1102601
одинаково, а в каждом разделе лежит индексовый файл с содержанием
include("$DOCUMENT_ROOT/index.php");
?>

Сейчас есть ещё два вопроса.

1. Не знаю корректно ли я сделал, может надо было написать так
include("$DOCUMENT_ROOT/index.php?$QUERY_STRING");
?>
Подскажите пожалуйста как корректно?

2. С графикой однако проблемма осталась.
Когда первый раз обращаешся к
http://Мой_сайт/?dp=1102601
или
http://Мой_сайт/раздел25/?dp=1102601
то если путь к графике указан "/images/fon.gif" то картинки оторванные, не отображаються. А вроде как после перезапроса графика приезжает.
Когда же пути указываю "images/fon.gif" то при запросе http://Мой_сайт/?dp=1102601 вся графика с первого раза отображаеться, а при запросе http://Мой_сайт/раздел25/?dp=1102601 вообще никак не приезжает, т.е. не в при первичном , ни при втором перезапросе, ни при третьем :(
После каждого перезапроса на компе кэш вычищаю, что бы всё каждый раз тянулось с хостинга. Совсем не хочеться пугать первый раз зашедшего посетителя узашным видом страницы.
В чём проблемма с графикой не пойму, почему первый раз графика не корректно отображаеться :( Чувствую что ответ какой то элементарный должен быть, но сам найти не могу.
Подскажите пожалуйста?

Оффлайн Britva

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1660
  • +0/-0
  • 0
    • Просмотр профиля
    • http://eugeny.com
При указании "/images/fon.gif" должно все работать и в 1-ом и во 2-ом случаях.
Но опять же, можно ввести переменную $url, например,
$url = "http://domain.com"
и точно также использовать как и $abspath, т.е.
Евгений aka Razor,

Оффлайн DLama

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 65
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Спасибо Бритва, как я до этого сам не додумался :)
Сейчас попробую ввести перменную.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28