|
|
|
| Столкнулся с такой проблемкой:
есть 2 файла(index.php и menu.php) 2 папки(Image и Novosty)
в index.php вставил такой код(меню):
<?
include "menu.php";
?>
Всте отображается отлично, решил в меню вставить еще картинки вот так:
Новости (и рядом картинка)
Все работает.
Когда так же хотел попробовать в файле indexNovosty.php(папка Novosty) обнаружил что картинки неотабражаются.
В чем проблема?
С уважением, BossXP | |
|
|
|
|
|
|
|
для: BossXP
(17.09.2004 в 14:37)
| | ты наверное файл переместил этот,а в menu.php или еще где забыл изменить путь к картинкам... | |
|
|
|
|
|
|
|
для: BossXP
(17.09.2004 в 14:37)
| | Все верно. Когда вы вставляете menu.php в index.php - у вас одни относительные пути к картинкам.
путь к картинкам: images/картинка
Если вы вставляете menu.php в Novosty/indexNovosty.php относительные пути к картинкам получаются другими.
путь к картинкам будет: ../images/картинка
Потому что сначала происходит "сборка" кода. И только потом его компиляция. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(17.09.2004 в 15:07)
| | Значит придется создавать несколько menu.php?
для новостей, и т.п?. | |
|
|
|
|
|
|
|
для: BossXP
(17.09.2004 в 16:17)
| | нет,просто поставь путь к картинке не /images/1.jpg а ../images/1.jpg и делов то... | |
|
|
|
|
|
|
|
для: LimP
(17.09.2004 в 16:34)
| | дело в том что у меня меню(menu.php) состоит из картинок, которые находятся в папке images.
И если я поставью ../images/1.jpg, то на главной странице загружаться картинки небудут.... вот в чем проблема...! | |
|
|
|
|
|
|
|
для: BossXP
(17.09.2004 в 16:17)
| | Я бы предложил создать такую структуру сайта, чтобы все страницы были на одном уровне. Например, каталоги
news
images
company
guestbook
forum
|
Тогда все относительные пути к картинкам имели бы значение ../images/картинка
Все было бы хорошо, но есть проблема с главной страницей. В принципе тоже можно решить. Редиректом c помощью htcccess либо редиректом с помощью Ява -скрипта пересылать на любую страницу в подкаталоге.
2 Вариант
Используйте тег base
<html>
<head>
<base href=http://www.site.ru/>
</head>
|
Тогда все Ваши относительные пути всегда будут отсчитываться от корня сайта. И для картинок и для ссылок.
Вообще то - это сильное решение.
Правда мне оно почему то не нравится - может и зря :) | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(17.09.2004 в 20:39)
| | А если документ например в папке
../Novosty/NovostyPK/PK.php
тогда как поступать с меню?? Создать аналогичное menu.php? | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(17.09.2004 в 20:39)
| | ?? | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(17.09.2004 в 20:39)
| | Не игнорируйте это сообщение...(срочоно надо)
Вот если у меня каталоги такие:
News
Image
Forum
Chat
путь к картинкам такой должен быть ../images/картинка, и меню(menu.php) должно быть только для этих папок
А если файл лежит в News/newsPK/pk.php
то путь такой ../../newsPK/pk.php
и придеться содавать меню(menu1.php) для ../../News/newsPK/
?? | |
|
|
|
|
|
|
|
для: BossXP
(19.09.2004 в 13:08)
| | Дизайнер куда-то запропостился... попробую ответить. Если вы используете тэг base вам уже не нужны относительные пути, так как все пути будут относительно указанного в тэге base.
<html>
<head>
<base href=http://www.site.ru/>
</head>
|
Тогда путь newsPK/pk.php эквивалентен
http://www.site.ru/newsPK/pk.php
|
в любой точке сайта как в корне так и в глубоко вложенной директории http://www.site.ru/newsPK/very/deep/directory/
PS Т.е. пути вида ../../dir уже не имеют смысла так как путь должен начинаться с одной из поддиректорий корневой директории (//www.site.ru/). | |
|
|
|
|
|
|
|
для: cheops
(19.09.2004 в 13:52)
| | еще вопросик, вот если пользователь заходит в раздел новости(по ссыле New) как сделать чтобы эта ссылка исчезла , т.е. чтобы пользователь находясь на странице новостей немог еще раз загружать эту же ссылку(New)?? | |
|
|
|
|
|
|
|
для: BossXP
(19.09.2004 в 17:46)
| | Если имеется меню вида
<a href=newsPK/pk.php>Новости</a><br>
<a href=ForumPK/pk.php>Новости</a><br>
<a href=ChatPK/pk.php>Новости</a><br>
|
То можно реорганизовать новости следующим образом:
<?php
$news = "/newsPK/pk.php";
$forum = "/ForumPK/pk.php";
$chat = "/ChatPK/pk.php";
if($_SERVER['PHP_SELF'] == $news) echo "Новости<br>";
else echo "<a href=".$_SERVER['SERVER']."$news>Новости</a><br>";
if($_SERVER['PHP_SELF'] == $forum) echo "Форум<br>";
else echo "<a href=".$_SERVER['SERVER']."$forum>Форум</a><br>";
if($_SERVER['PHP_SELF'] == $chat) echo "Чат<br>";
else echo "<a href=".$_SERVER['SERVER']."$chat>Чат</a><br>";
?>
|
PS В последнем случае даже не понадобится тэг <base>, так как каждый раз будет формироваться абсолютный URL. | |
|
|
|
|
|
|
|
для: BossXP
(19.09.2004 в 13:08)
| | Был в отъезде :)
Но вроде бы и без меня разобрались. | |
|
|
|