Организация навигации на сайте...

Ответить

Код подтверждения
Введите код в точности так, как вы его видите. Регистр символов не имеет значения.

BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[url] ВКЛЮЧЁН
Смайлики ОТКЛЮЧЕНЫ

Обзор темы
   

Развернуть Обзор темы: Организация навигации на сайте...

Oscar » 04 май 2006, 15:00

menu.inc

Код: Выделить всё

[url=#]menu1[/url]

[url=#]menu2[/url]

[url=#]menu3[/url]

[url=#]menu4[/url]
index.php

Код: Выделить всё

<table style="width: 100%; height: 100%;" border="1">
<tr>
	<td style="width: 200px; vertical-align: top;">
		<?=implode('', file ('menu.inc'));?>
	</td>
	<td style="vertical-align: top;">
		content
	</td>
</tr>
</table>

BelkaJul » 04 май 2006, 14:14

Помогите новичку (в РНР) пожалуйста.
Хочется подключить меню в каждой странице. Чтобы при изменении инфы в меню - сделать это один раз в файле "menu.php"

Что есть на данный момент:
файл menu.php

Код: Выделить всё

<?
function Left_menu()
{
$str_menu=<<<DOCNAME_menu
<html>
<body topmargin="0" leftmargin="0">
<table border="1">
.......теги меню

</body>
</html>

DOCNAME_menu;
echo $str_menu;
}
?>
пытаюсь подключить меню в файле Index_2.php:

Код: Выделить всё

<?
[b]include "menu.php";[/b]?>

<html>
<head>
<title>Добро пожаловать на пробный сайт</title>
</head>
<body topmargin="0" leftmargin="0">

<table border="0"  width="99%" height="814">
  <tr>
    <td width="23%" rowspan="19"  height="814">
<? Left_menu(); ?>    
   <td colspan="3"  height="219">
.........

 </tr>
</table>

</body>
</html>
Что я делаю не так?

vitpanov » 30 сен 2005, 16:36

Oscar, Вот что есть.
Ссылка index.php?janr=1 по этой ссылке переменной janr присваивается значение 1.
Ну и есть масса других похожих ссылок только различающихся конечной цифрой.
Как сделать такую вещь: чтобы опираясь на значение переменной $janr другой переменной присваивалось особое значение...

Jevgenij » 27 сен 2005, 18:03

Можно просто на инклудах, каждый раз передавая в виде параметра, какой файл включать. В командной строке у тебя будет аоказываться всегда http://www.mysite.ru/index.php?actio=xxxxxxx , где ххххххх - параметр, по которому ты определяешь, какой файл инклудить.

Oscar » 26 сен 2005, 23:21

vitpanov,

А где волшебное слово? :-)


Сайтостроение я учил на пальцах и не имею ни малейшего понятия, насколько "правильным" является то, что я делаю.

Я сделал три, похожих между собой, типа навигации.

1. http://www.pe.mw.tu-muenchen.de/index.php?inhalt=news
news - это поле в Базе Данных, с которым связан путь (директории/php_файл), который подключается (include) в index.php, а так же пункт меню, который становится активным

2. http://www.mw.tum.de/index.php?inhalt=3_2_1
Нужно было сделать быстро, и я обломался, и скинул все файлы в корневую директорию.
В index.php просто инклудится файл 3_2_1.php
Ненадёжно? Кто сломает - расскажите, как.

Во время инклуда я проверяю, существует ли файл на сервере, потому сделать include('http://server/HACKpage.php') - не возможно.
Кроме того, я добавляю к переменной $_GET['inhalt'] окончание ".php", то есть другие файлы с сервера показать нельзя!

3. http://www.sus-n.org/newweb/?p=2.1
(из недоделаного, в процессе, так сказать)

p - сокращение от page, на самом деле это уровни в меню
$level1 = 2
$level2 = 1
$level3 = 0

По этим уровням (опять же из БД) вытягивается содержание.
Поскольку страницу оОочень хотят видеть с контент-менеджментом, "XXX.txt" или "XXX.inc.php" файлов в этом случае нету и подавно.

Опять же таки:
По первому уровню активируется первый пункт меню (создаётся из БД),
по второму - второй (там же, учитывая, что выбрано первым) и настраивается содержание.


------

Кроме того. У меня всё как-то руки не доходили, но я знаю, что можно побалываться настройками сервера (у меня они - Апаче).
А точнее директивой "mod_rewrite".

И можно настроить его таким образом, чтобы адрес был:
http://www.sus-n.org/de/2.1/
или
http://www.sus-n.org/ua/3.1.2/

А файлы читались, как:
http://www.sus-n.org/index.php?lang=de&page=2.1
http://www.sus-n.org/index.php?lang=ua&page=3.1.2

vitpanov » 26 сен 2005, 20:58

Oscar, объясни что эт такое...:!:

vitpanov » 26 сен 2005, 20:57

Мой метод с навигацией это
index.php?dir=DIRECTORY&page=1
где dir-директория, а page-номер txt файла...
Это не совсем удобно что можно заменить на более удобный :?:
Видел типа index.php?x=index2

Oscar » 24 сен 2005, 20:36

vitpanov,
Во-первых, навигация должна быть "user friendly". То есть поставь себя на место пользователя и подумай, где бы ты хотел её видеть, и как тебе было бы удобнее "проходить" по своему сайту.

Во-вторых, навигация - это меню, насколько я понимаю.
Пихаешь его слева, справа, или вверху от основного контента (куда лучше - посмотри по дизайну).

Дальше, в каждом пункте меню должно быть максимум 6-7 подпунктов (это касается и верхнего уровня),
поскольку среднестатический человек не воспринимает больше информации одновременно.

Ну а техническая сторона ...
1. Делаешь меню статическим (HTML)
2. Делаешь меню динамическим (JavaScript)

+. Можешь хранить пунткы в файле или в БД, и формировать меню при помощи PHP (тогда его проще будет редактировать)

Что именно ТЕБЕ надо, - тебе решать.
Какой уровень сложности тебе нужен, на что хватит твоих знаний/умений, насколько это подходит к остальным частям сайта и т.д.

Организация навигации на сайте...

vitpanov » 24 сен 2005, 19:59

Народ!Подскажите как лучше устроить навигацию на сайте :? .

Вернуться к началу