This version of the page http://z-group.org.ua/art_navigacija_na_php.html (0.0.0.0) stored by archive.org.ua. It represents a snapshot of the page as of 2008-04-20. The original page over time could change.
Навигация на PHP : Основы сайта : Статьи
Главная - Статьи - Заработок с сайта - Скрипты - Наши работы

Статьи -> Основы сайта -> Навигация на PHP

Навигация на PHP

Думаю, что каждому хочется содать на своём сайте навигацию, которая будет легко настраиваться и не потребует большого кол-ва страниц с одинаковыми элементами (меню, баннеры, логотип и т. п.). В этой статье я предлагаю вам ознакомиться с навигацией простого типа на PHP. Этот скрипт сойдёт для сайтов среднего уровня, где не так много встроеных скриптов.
Эта навигация включает в себя: Главную страницу, Неограниченое кол-во разделов и подразделов, страницу ошибок 404. В эту навигацию можно вставлять любые скрипты, главное ничего не напутать с путями к файлам.

У вас будет такая структура сайта:

- ./index.php - оболочка сайта (т. е. меню, баннеры, стандатный дизайн и т. п.) на которую будет подружаться информация...
- ./site/ - папка в которой будет вся текстовая информация (без картинок, только файлы *.php), а также папки отвечающие за подразделы...
- ./site/index.php - Раздел Главной страницы...
- ./site/*.php - файлы разделов...
- ./site/*/*.php - Файлы подразделов. Все файлы подразделов находятся в папках с именем раздела (Напирмер: Раздел texts имеет три подраздела 1, 2 и 3 - это значит что в папке /site/ должен быть файл раздела texts.php, а в папке с именем подраздела /site/texts/ должно быть три файла 1.php, 2.php и 3.php)...

Структура ссылок:

- index.php?section=* - Ссылка на раздел.
- index.php?section=*&sect=* - Ссылка на подраздел.
- index.php?section=razd - Пример: Эта ссылка на страницу /site/404.php - если файл /site/razd.php не найден.

Предупреждения о возможных ошибках:

- Никогда не прописывайте ссылки такого вида: "http://site.ru/site/razdel.php" или "http://site.ru/site/". Если прописывать ссылки такого вида - поисковые системы будут неправильно индексировать ваш сайт!
- Не закачивайте ничего кроме файлов *.php или *.html в папку /site/ и её вложеные папки!
- Все пути относительно любого из разделов и подразделов равносильны путям напрямую от файла index.php. А именно: Если каритнки у вас в папке /img/, то ссылки на них из подраздела "?section=pictures§=gallery1" надо прописывать обыкновенные: "img/pictures/gallery1/picture.jpg". (папка \img\ лежит в корневой директории сайта)
- Любые скрипты можно размещать на страницах разделов, но нужно помнить про правильность путей. Папки со скриптами лучше размещать в корневой директории или в специальной папке (/scripts/)

Далее смотрите код:

В Самом верху файла index.php над <html> нужно написать это:
<?
if($_GET['section']!=""){
  if($_GET['sect']!=""){
    if(file_exists("site/".$_GET['section']."/".$_GET['sect'].".php")){
    $include="site/".$_GET['section']."/".$_GET['sect'].".php";
    }else{
    $include="site/404.php";
    }
  }else{
    if(file_exists("site/".$_GET['section'].".php")){
    $include="site/".$_GET['section'].".php";
    }else{
    $include="site/404.php";
    }
  }
}else{
$include="site/index.php";
}
?>
В месте, где должна отображаться информация раздела нужно прописать это:
<?
if($include!=""){
include($include);
}else{
include("site/index.php");
}
?>

Эта система навигации проверена, и не должна содержать ошибок. Главное - это хорошо в ней разобраться.
Для того, чтобы использовать эту навигацию вы должны иметь базовые знания PHP.
Это - не готовый скрипт, он потребует настройки под ваш сайт, хотя долго настраивать не прийдётся.

Если Вы заметили какие-либо неточности или ошибки в размещенной информации, просим сообщить о них администрации.