Николай В.

Николай В.
Рейтинг
62
Регистрация
07.09.2006
Должность
веб-разработка
Интересы
фотография, электронная музыка, фантастика

у меня английская версия FireFox-a и весь ваш сайт отображается на английском.

Segey

Выходит что XML это универсальная БД

нет, это не так. XML - очень удобный формат передачи данных. В первую очередь передачи. В плане хранения БД в разы удобнее.

Т.е. по сути дела у вас один скрипт, который генерирует деревья, набор шаблонов и XSLT процессор?

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

А как быть с простомы инклудами футера и хеадера? Или они вставляются в шаблон так же, а в процессор скармливается только шаблон формата данных и сами данные? Или они есть в самом генераторе страниц т.е. единственном скрипте и подключаются по мере необходимости?

Вам, наверное, стоит посмотреть простейшие примеры готовых xml и xsl-шаблонов.

Вот:

XML

Шаблон

Результат

Может быть наборот или я неправильно понял?

Вроде все правильно написал. Я использую библиотеки Sablotron и expat, которые находятся на http://www.gingerall.com. В сети полно мануалов по установке, а многие хостеры их поддерживают по умолчанию (я создавал тему в разделе "Хостинг" о Sablotron и кто-то выдал целый список подходящих хостинг-компаний).

Нод (node) - это узел дерева.

XSLT-процессор - библиотека классов, которой вы кормите XML и XSLT, а она отдает результат или ошибку. Поищите по запросу "Sablotron".

1. Смотря, как напишите. У меня это отдельный метод в классах модулей (статьи, фото, каталог и т.д.) + функция, облегчающая организацию нодов (я в нее отдаю массив с названием нода, агрументами и значениями, а на выходе получаю XML-код узла).

2. Процессор написан до вас. Зависит от вашего выбора и платформы. Ничему учить его нельзя, XSLT-спецификации уже четко определены.

3. Хм. Вам решать. Мне этот подход кажется оправданным и достаточно гибким. Для моих задач. Но тот же Smarty или {вставки} гораздо проще, как мне кажется, а тут еще один язык учить или XSLT-верстальщика нанимать.

Да, еще один момент. XSLT - единственный стандратизированный шаблонизатор.

XSLT - это метод преобразования XML в другой XML или, как частный случай, в HTML и XHTML (с последним сложнее). Еще можно в Plain Text преобразовать. CSS же отвечает за оформление полученной структуры, т.е. схема такая

XML (данные) + XSLT (правило преобразования, в просторечье "шаблон") = HTML-документ (структура страницы)

HTML-документ + CSS (правила визуального (и не только) оформления) = Картинка в браузере

При реализации XSLT-шаблонизатора на PHP подход, как мне кажется, и как я делаю, такой:

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

2. XML скрещивается с XSLT-шаблоном посредством XSLT-процессора.

3. Полученный HTML и заранее подготовленный CSS отдается пользователю.

Да, это может показаться несколько громоздким и сначала непонятно зачем строить XML, если можно скормить данные напрямую другим шаблонизаторам, но прелесть в том, что посредством XSLT-преобразований из одного XML можно построить все, что угодно и веб-страничку, и excel-файл, и rtf c pdf, а также XML любой другой структуры (тот же YML от Яндекс.Маркета).

Еще я бы посоветовал приобрести книгу-справочник по XML и XSLT, т.к. там много тонкостей и сложностей. В интернете можно почитать

http://www.zvon.org

http://www.raleigh.ru/

Mr_Promoter:
А подробнее можно об этом?

Mr_Promoter, формат CSV - это данные, разделенные точками с запятой.

Чтобы понять, что это такое и как выглядит, сохраните произвольную Excel-таблицу в формате CSV, а затем откройте в простом текстовом редакторе, например в "Блокноте".

phpMyAdmin использует именно этот формат. Недостаток - полное отсутствие форматирования, даже ячейки не растягиваются под данные.

def, покажите страницу.

saluta:
Ладно, с этим сайтом все ясно.
Если не трудно оцените другое творение - Благовещенский Сельскохозяйственный техникум
Буду рад выслушать любую критику.

P.S. за содержание, постановку и т.д. текстов я ответственности не несу. Основные ваши замечания я обсудил с заказчиком - ответ прост - так нормально.

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

А что касается невозможности объяснить клиенту, как следует готовить текстовые материалы для сайта, то это опять же ваш минус.

Работайте, равняйтесь на успешные проекты, читайте книжки, и все будет получаться.

http://www.browsrcamp.com

здесь можно получить скриншот сайта в Safari (браузер для МакОса)

TIMI, ваш подход тоже не совсем верный.

Серьезный проект - это не "сейчас пару статеек, каталог, а потом еще чего-нибудь прикрутим", и это даже не огромный магазин с кучей мелких фишечек, это не CMS и не дизайн.

Серьезный проект - это идея, бизнес-план и бюджет. А воплощение в жизнь - дело команды профессионалов, у которых не возникает вопросов - "какой инструмент выбрать?". В силу профессионализма. Абсолютно не важно, чем они воспользуются - готовой CMS или собственной разработкой, если проект будет работать в соответствии с замыслом и планами заказчика. Человек же, терзаемый вопросом - "какой скрипт выбрать?", по-настоящему серьезный проект не потянет.

Всего: 487