Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Типовые структуры навигации

Сообщения:  [1-10]   [11-12] 

 
 автор: [CHOL]Scorpion   (27.07.2005 в 13:08)   письмо автору
 
   для: Loki   (27.07.2005 в 13:03)
 

Мда, ты прав.


Кстати с этим можно смириться, всётаки динамические страницы, это динамические страницы.Или как предложили, эзать сессии.

   
 
 автор: Loki   (27.07.2005 в 13:03)   письмо автору
 
   для: [CHOL]Scorpion   (27.07.2005 в 12:40)
 

Это актуально для рефреша страницы, а cheops, как я понял, говорил о history.back

   
 
 автор: cheops   (27.07.2005 в 12:56)   письмо автору
 
   для: Loki   (27.07.2005 в 12:32)
 

Если код отлажен и его изменение не желательно, мы предпочитаем создать новую директорию - если код создаётся с нуля, то конечно воспользуемся флагом или анализуруем нельзя ли создать что-нибудь более универсальное.

   
 
 автор: [CHOL]Scorpion   (27.07.2005 в 12:40)   письмо автору
 
   для: cheops   (27.07.2005 в 12:08)
 

Для возврата данных, если что то в форму введено не верно можно поступить по простому, можно не форвардить через header обратно, можно ввести флаг, например $error, елси функция записи возвращает $error === True, то инклудится форма, которая была на предыдущей странице. а в самой форме в значении полей писать просто If (IsSet(переменная) && !Empty(переменная)){ echo "переменная";}

   
 
 автор: Loki   (27.07.2005 в 12:32)   письмо автору
 
   для: cheops   (27.07.2005 в 12:14)
 

Я имел ввиду не саму навигацию, и "конструкцию" сайта. Если мы делаем голый хтмл, то все ясно: страницы и в них ссылки друг на друга. Делая сайт на php, мы можем эту структуру сколь угодно усложнять. Вот это меня собственно и интересует.
По поводу папок: а если имеются несколько разделов, идентичных по коду, но различных по содержанию: все равно раскидываете их в разные папки? Или просто вводите ключик, который указывает какую информацию в данном случае выводить?

   
 
 автор: cheops   (27.07.2005 в 12:14)   письмо автору
 
   для: Loki   (26.07.2005 в 23:52)
 

Мы стараемся под каждое Web-приложение создать отдельную директорию, но таким образом, чтобы сайт спускался от корня только на один уровень. Каждое Web-приложение состоит из блока представления и блока администрирования. Таким образом, сайт состоит из блоков и может собираться как конструктур. Правда систему навигации каждый раз приходится делать по-новой, но она как правило завязана на дизайн, поэтому она создаётся с учётом дизайна сайта.

   
 
 автор: cheops   (27.07.2005 в 12:08)   письмо автору
 
   для: Loki   (26.07.2005 в 23:45)
 

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

   
 
 автор: Loki   (26.07.2005 в 23:52)   письмо автору
 
   для: cheops   (26.07.2005 в 18:52)
 

>Если честно то не очень понятно...
Ну на самом деле вопрос можно упростить: для каждого конкретного сайта структура разрабыатывается отдельно, или адаптируется какая-то типовая? Если второе, то какие наиболее распространены? (напр, когда index.php передается переменная, а он, в зависимости от переменной, показывает нужную страницу. Или для кадой страницы своя папка, или еще как).
В общем, хочется узнать о набитых уже шишках, чтобы не изобретать велосипед.

   
 
 автор: Loki   (26.07.2005 в 23:45)   письмо автору
 
   для: [CHOL]Scorpion   (26.07.2005 в 22:38)
 

Короче, как я понимаю, самое оптимальное, использовать для горизонтальной (разделы) и вертикальной (статьи) навигации отдельные переменные?в этом случае все получается достаточно структурировано и прозрачно... Надо будет попробовать их передавать через сессии, а то слишком много информации надо гонять через адресную строку:)

   
 
 автор: [CHOL]Scorpion   (26.07.2005 в 22:38)   письмо автору
 
   для: Loki   (26.07.2005 в 13:28)
 

Выработанная горьким опытом структыра сайта:

index.php - полько служебные функции как о запрет кэширования, соединение с базой MySQL и так далее. Одним словом служебные, сервисные функции.

далее. сущетвует одна единственная переменная, которая отвечает за то какой модуль будет грузиться (в твоём случае это "карта". лучше используй слово "модуль", так приятнее и понятнее). А вот уже в файле в модулем твори что хочешь, с одним условием: не трож переменную которая влияет на выбор модуля.

Ещё совет в том, что елси нужно получить какой-то локализованый результат, лучше использовать функции. При томже эффекте можно хоть в миллиарде функций юзеть одинаковые переменные. То что внутри вынкции так внутри неё и останется, елси переменные не вернуть через return. Хотя и в этом случае ты можешь задавать по желанию названия переменных. Если у тебя не трёх ярусные массывы используются, могу порекомендовать юзать такие уловки как все переменные одного модуля называть уникальным для одуля именем. Ты про это кстати писал, только криво это реализовал.
Зачем вводить статичные $a,$b,$c, елси можно сделать $myVar[$module][любая переменная модуля].

Ещё можно называть переменные по разному скажем для срвисных целей использовать например $имяПеременной, а для остальных $имя_переменной

Способов куча. Динамические предпочтительнее.

   

Сообщения:  [1-10]   [11-12] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования