| |
|
|
| | структура сайта такова:
index.php(файл)
news(папка)
util(папка)
В папке util содержатся файлы top.php(шапка сайта) и bottom.php(копирайт и т.д.), menu.php(меню сайта)
Файл index.php - главная страница сайта
В папке news есть файл index.php(страница Новости)
Меню организовано следущим образом:
<a href='../index.php'>Главная</a>
......
<a href='../news/index.php'>Новости</a>
|
Теперь приведу код главной страницы:
<?php
$title= Главная;
print <<<HERE
<center>
<table border="0" cellpadding="0" cellspacing="0" width="900">
<tr>
<td colspan=2>
HERE;
include "util/top.php";
echo"</td></tr><tr><td bgcolor=#EDF1F7 valign=\"top\" width=140>";
include "util/menu.php";
print <<<HERE
</td><td width=760>
HERE;
Главная страница
print <<<HERE
</td><tr><td colspan=2>
HERE;
include "util/bottom.php";
echo"</td></tr></table></center>";
?>
|
Код страницы Новости такой же, за исключением того, что подключая файлы из папки указываю путь: ../util/файл.php
Открываю главную страницу сайта на первый взгляд все отлично, но выбрав в меню новости переходит на адрес: http://localhost/news/index.php , а должно быть так http://localhost/папка сайта/news/index.php . А вот если теперь если ввести в строку браузера: http://localhost/папка сайта/news/index.php то страница новости отображается и переход на главную страницу тоже получается!
Почему так получается я понимаю(просто страница новости лежит в папке, а главная в корне сайта), но вот как это исправить?
P.S. постарался объяснить все как можно подробнее, если что-то не указал - скажите, допишу | |
| |
|
|
| |
|
|
| |
для: Dizels
(02.10.2006 в 15:18)
| | | Дык и правильно оно переходит :) Объясняю. Индексная страница собирается из 4х кусков. И при подключении код в этих кусках не меняется. То есть, если в файле menu.php будет написано "../news/index.php", то браузер попытается перейти на страницу уровнем выше. Что не требуется. То есть, чтобы браузер переходил так, как положено, путь должен быть просто "news/index.php". Но тогда встает проблема другого характера: как поступать с теми файлами, которые лежат на уровень (или несколько уровней) ниже корневого каталога.
Я бы поступил так:
можно написать скрипт с названием, например, config.inc, и положить его в папку inc (которая должна быть создана в корне сайта). И подключать во все необходимые файлы. В скрипте прописать в переменных пути к подключаемым файлам и все основные URL, работающие на сайте. Например, так:
<?
$_PATH['project']=$_SERVER['DOCUMENT_ROOT']; //это - корневой каталог сайта
$_PATH['admin']=$_PATH['project']."/admin";
$_PATH['include']=$_PATH['project']."/inc";
$_URL['project']="http://www.mysite.com";
$_URL['img']=$_URL['project']."/images";
$_URL['news']=$_URL['project']."/news";
?>
|
Ну, примерно так. То есть, в URL везде прописаны абсолютные пути и теперь для того, чтобы написать ссылку на файл "news/index.php" достаточно будет сделать так:
<a href="<?=$_URL['project']; ?>/index.php">Новости</a>
|
Такая конструкция будет работать на любой странице сайта. Чуть-чуть понятно? | |
| |
|
|
| |
|
|
| |
для: aexb
(02.10.2006 в 19:00)
| | | Да, огромное спасибо именно это мне и нужно было, сегодня вечером буду пробовать | |
| |
|
|
| |
|
|
| |
для: Dizels
(04.10.2006 в 14:22)
| | | Итак, меню исправил, все работает, огромное спасибо, правда появился еще один вопрос, а как мне вот эту строчку преобразовать:
под нее у меня такой код:
$_PATH['util']=$_PATH['project']."/util";
...
$_URL['util']=$_URL['project']."/util";
|
Заранее благодарен. | |
| |
|
|
| |
|
|
| |
для: Dizels
(04.10.2006 в 21:45)
| | | Подскажите плз | |
| |
|
|
| |
|
|
| |
для: Dizels
(07.10.2006 в 12:44)
| | | Ктонибудь откликнитесь!!! Вы же наверняка знаете! | |
| |
|
|
| |
|
|
| |
для: Dizels
(07.10.2006 в 19:19)
| | | Так:
<?php
#
require_once ($_URL['util']."/top.php");
#
?>
|
| |
| |
|
|
| |
|
|
| |
для: Poison
(07.10.2006 в 19:47)
| | | Огромнейшее спасибо! | |
| |
|
|
| |
|
|
| |
для: Dizels
(07.10.2006 в 21:10)
| | | Заметил еще одну ошибку, на главной странице у меня есть такой код:
<?php
include "util/config.php";
....
$title= Главная;
....
require_once ($_URL['util']."/top.php");
?>
|
Вот, соответственно в новостной части переменной title присваивается значение Новости и т.д. Вот, передается все это в файл top.php, который лежит в папке util. А файл config.php подключаю собственно для того, чтобы работало меню. Так вот - не работает почему-то этот title, хотя до внесения изменений в меню все прекрасно работало, что случилось? и как исправить? | |
| |
|
|
| |
|
|
| |
для: Dizels
(07.10.2006 в 22:58)
| | | Вопрос в силе | |
| |
|
|
| |
|
|
| |
для: Dizels
(09.10.2006 в 10:28)
| | | Ребята, помогите плз | |
| |
|
|
| |
|
|
| |
для: Dizels
(07.10.2006 в 22:58)
| | | Надо так: $title = "Главная"; Строки нужно писать в кавычках. | |
| |
|
|
| |
|
|
| |
для: Саня
(09.10.2006 в 19:55)
| | | Да нет - проблема не в этом, проверил. Да к тому же оно бы не работало с самого начала, а так - перестало работать именно после того как меню исправил | |
| |
|
|
| |
|
|
| |
для: Dizels
(09.10.2006 в 19:58)
| | | ? | |
| |
|
|
| |
|
|
| |
для: Dizels
(10.10.2006 в 20:16)
| | | Очень хотелось бы, чтобы и с этим вопросом мне помогли разобраться | |
| |
|
|
| |
|
|
| |
для: Dizels
(11.10.2006 в 00:24)
| | | Ребят, ну помогите плз, может еще что-то надо рассказать - напишите, я все выложу, поясню и т.д., ну очень надо сделать все это как было:) | |
| |
|
|
| |
|
|
| |
для: Dizels
(12.10.2006 в 12:05)
| | | ХЕЛП!!! | |
| |
|
|
| |
|
|
| |
для: Dizels
(13.10.2006 в 13:26)
| | | Люди ну помогите я так и не могу разобраться в чем проблема | |
| |
|
|
| |
|
|
| |
для: Dizels
(07.10.2006 в 22:58)
| | | Покажите код файла top.php. | |
| |
|
|
| |
|
|
| |
для: Саня
(17.10.2006 в 13:03)
| | |
<html>
<head>
<title> <? include "../admin/title/title.txt"; ?> ::<? $title ?></title>
....
</html>
|
В файле title.txt название | |
| |
|
|
| |
|
|
| |
для: Dizels
(17.10.2006 в 17:54)
| | | То, что обсуждалось выше относится и к top.php, и к bottom.php. В этих скриптах тоже нужно править пути. | |
| |
|
|
| |
|
|
| |
для: Саня
(17.10.2006 в 18:02)
| | |
<title> <? include "../admin/title/title.txt"; ?> ::<? $title ?></title>
|
Вот какая часть кода не работает <? $title ?> | |
| |
|
|