Выбор технологии для сайта журнала

ybilevych

Новичок
Выбор технологии для сайта журнала

Добрый день,

Нужна консультация по вопросу выбора технологий для решения моей задачи.

А вот и сама задача.
Необходимо построить электронную версию журнала. Сайт должен уметь:
- хранить архив номеров со статьями
- осуществлять поиск по автору/теме/содержанию статьи с выводом номер+статья+автор+фраза_где_найдено_совпадение (что-то похожее на поиск в Google)
- просмотр статей в виде каталога т.е. год(месяц)->номер->статья (что-то вроде каталога в том же Google)
- вывод содержания свежего номера в дополнительном поле
- ну и остальные детали, например интерфейс для создания новых номеров/статей

Естественно, хотелось бы иметь минимум переделок при изменении дизайна.
Ну и естественно все это на PHP ;)

Я остановился на хранении каждой статьи в виде отдельного XML документа, но не знаю, чем эти данные обрабатывать.

Еще раз повторюсь, что интересует выбор технологии, с помощью которой все это можно сделать, а не код.

Заранее спасибо
 

slach

Новичок
ну для начала, а у тебя ЕСТЬ электронный архив всех выпусков журнала ?? в каком виде ??

существует ли какая либо ВНУТРЕННЯЯ среда сбора и публикации материалов ?? или все хранится в виде ЗАВЕРСТАННЫХ макетов в одной из популярных сред верстки ?
 

Long

Новичок
осуществлять поиск по автору/теме/содержанию статьи с выводом номер+статья+автор+фраза_где_найдено_совпадение (что-то похожее на поиск в Google)
такой поиск по xml??? очень накладно будет, если делать в лоб. если заранее индексировать все статьи, то нужна база. тогда какой смысл хранить статьи в xml? я бы сделал все в БД (собственно так и работает http://www.yachting.su , чтобы соблюсти копирайты ;) отмечу, что разрабатывал этот сайт не я, на мне сейчас поддержка).
 

Фанат

oncle terrible
Команда форума
Я остановился на хранении каждой статьи в виде отдельного XML документа
можно поинтересоваться, какие были альтернативы и на основании каких критериев был сделан выбор?
 

ybilevych

Новичок
Автор оригинала: admin

А редакторы XML знают?
Подозреваю, что нет...
Надеюсь исравить это либо использованием XML-редакторов или собственного веб-интерфейса, который сможет проверить валидность введенных данных
А формат документа будет иметь, скажем, 3 секции, которые будут вводиться в разные поля ввода, а потом объединяться.

-~{}~ 18.08.05 10:22:

Автор оригинала: slach
ну для начала, а у тебя ЕСТЬ электронный архив всех выпусков журнала ?? в каком виде ??

существует ли какая либо ВНУТРЕННЯЯ среда сбора и публикации материалов ?? или все хранится в виде ЗАВЕРСТАННЫХ макетов в одной из популярных сред верстки ?
Хмм... Пока есть только HTML-версия :( Хотя думаю, макет тоже должен существовать.
А внутренней среды нет...

-~{}~ 18.08.05 11:03:

Автор оригинала: Фанат
можно поинтересоваться, какие были альтернативы и на основании каких критериев был сделан выбор?
Альтернативой была mySQL, но подумал, что хранение архива будет все-таки накладным для базы. Правда (даже статья есть на сайте Клуба), поиск в базе будет весьма эффективным.

Естественно, HTML никак не подойдет, т.к. ни поиска, ни удобного редизайна...


Кстати, а как это реализовано на сайте Клуба, если не секрет?
 

Фанат

oncle terrible
Команда форума
подумал, что хранение архива будет все-таки накладным для базы.
накладным - это как? база платит большие деньги за хранение архива?

а xml хранить не накладно? А в чём разница?

-~{}~ 18.08.05 11:10:

впрочем, единственный ответ, который можно было дать в этом топике, звучит так:
http://russian.joelonsoftware.com/Articles/BacktoBasics.html

-~{}~ 18.08.05 11:11:

Естественно, HTML никак не подойдет, т.к. ни поиска
а в чём разница между поиском по HTML и поиском по XML?
 

ybilevych

Новичок
Автор оригинала: Long
...Я бы сделал все в БД (собственно так и работает http://www.yachting.su)...
Да, функциональность очень похожа на ту, которую я ожидаю получить. Единственное - хотелось бы еще в поиске показывать фразу, где встретилась искомая строка.

Кстати, а как хранятся картинки (в файлах или базе)? И как они связываются с текстом статьи? И как реализовано редактирование/создание статьи? И насколько будет сложен редизайн сайта?
 

Фанат

oncle terrible
Команда форума
как хранятся картинки, можно узнать, нажав правой кнопкой мыши на оной и выбрав "Свойства".

Какое отношение имеет редизайн к тому, где хранить статьи - в базе или в отдельных файлах?
 

ybilevych

Новичок
Автор оригинала: Фанат
накладным - это как? база платит большие деньги за хранение архива?

а xml хранить не накладно? А в чём разница?
Дело не столько в хранении, сколько в обработке.
База должна сначала загрузить в память таблицу, или ее часть (которая, кешируется до окончания запроса - впрочем, это зависит от настроек сервера БД), а потом сформировать результат. Впрочем, здесь Вы правы - накладные расходы могут оличаться незначительно.

Ладно, тогда второй аргумент - гибкость дизайна. Например, нужно цитаты в тексте выделять курсивом. Ну захотелось так. Это как сделать - писать теги в базу данных? Или разбивать текст на части? А если кому-то когда-то взбредет в голову изменить дизайн - например заменить курсив на жирный - это как - делать изменения по всей базе данных? И т.д. и т.п.

впрочем, единственный ответ, который можно было дать в этом топике, звучит так:
http://russian.joelonsoftware.com/Articles/BacktoBasics.html
В той этой статье Джоель написал о фундаменте дома (собственно, чем я с вами в этом топике и занимаюсь) и о SQL-запросе к XML данным в базе данных.
 

Фанат

oncle terrible
Команда форума
База должна сначала загрузить в память таблицу, или ее часть
ВАУ!
загружает значит. часть таблицы. или её целиком. интересно.
очень интересно.

а парсер XML ничего в память не загружает, насколько я понимаю эту глубокую мысль?

В той этой статье Джоель написал о фундаменте дома (собственно, чем я с вами в этом топике и занимаюсь) и о SQL-запросе к XML данным в базе данных.
И что?
Какой же вывод сделан из прочтения статьи о фундаменте дома?
 

ybilevych

Новичок
Автор оригинала: Фанат
...ВАУ!...
Чувствую, что мы плавно сползаем в флейм.

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

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

Пока что только Long дал весьма определенный совет

Кстати, вырезАть цитату из конекста не является хорошим тоном.

P.S. Чувствую, что получу off-topic'ом за этот пост...
 

Фанат

oncle terrible
Команда форума
А ты разе дурак?
Ты не можешь ответить на вопрос, который тебе задают и сделать из него простые выводы?
Ты не можешь прочесть статью, где тебе чёрным по белому написано, как делать правильно, а как - неправильно?
Ты не можешь разделить две совершенно разные задачи - формат оформления одной статьи, и способ хранения всех статей и решать их по очереди, не смешивая?

Лично моё мнение в таких случаях - давать определённые советы такому человеку бесполезно. Они ему всё равно не помогут.
 

WMix

герр M:)ller
Партнер клуба
Мой совет, используй изначальную связку

1. DB -> XML
2. XML+XSLT -> HTML

так делаю я !!!

дополнительные возможности хранения после 1го этапа сделать несложно!! все остальные вопросы легко решаются на уровне Базы данных!

а если ты ещё напишеш импорт созданных хмлов обратно в базу
то решиш более менее задачи хмлного приложения!!

-~{}~ 21.08.05 20:33:

Фанат
Статейка оч классная!!!
 

Renny

Новичок
2Автор, а может тебе взять для начала блог взять и этом виде журнал свой сделать?
 

maxim

Новичок
Поверь WMix он дело пишет.

Храни статьи в виде html (Хорошо искать) в базе.

Затем вынимай их, добавь данные элементов страницы, замеси это в XML. Наложи поверх XSLT(оформление страницы) и получи с полки пирожок в виде конечного HTML.

А все хитрые места типа цитат(или ещё чего) оформляй так <span class="cyte">lskfg flg lfgj</span> И далее через CSS хоть каждый день меняйте вид блоков.

А универсального решения ты не никогда не получишь.
 
Сверху