2012-02-19 1 views
2

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

Я уже использую много таблиц MySQL для других аспектов, связанных с CMS, но для этого использования мне интересно, действительно ли таблица базы данных является лучшим вариантом. В таблице будет всего 4 записи, и будет 3 столбца. Это не будет написано слишком часто, просто прочитайте, как загружается целевая страница.

Могу ли я лучше придерживаться таблицы MySQL для хранения этого минимального объема информации, так как он будет легко вписываться в рабочий процесс [программирования]? Или использовать XML-файл, который хранит эту информацию, будет лучшим способом?

UPDATE: Конечный пользователь (который ничего не знает о базах данных) будет проходить через веб-интерфейс, я создаю, чтобы выбрать один из 4-х предметов, которые они хотят обновить, а затем загрузить изображение со своего компьютера, а затем выбрав ссылку из списка страниц на сайте (или вне сайта). Файл XML или таблица базы данных будут хранить местоположение изображения на сервере и ссылку для его обертывания.

+1

Почему бы вам просто не создать шаблон и использовать его вместо этого. Я за то, чтобы придерживаться db-способа, по крайней мере, вы можете изменить его на ходу, если у вас есть доступ к phpmyadmin из любого места. –

ответ

3

База данных - это правильное решение для хранения динамических данных. Однако я согласен, что это похоже на то, что MySQL слишком силен для этой ситуации. Это также означает, что для администрирования и управления может быть реализовано совсем другое. Но использование плоского файла, такого как XML, тоже плохая идея. К счастью SQLite - это просто вещь.

Пусть эти фрагменты из SQLite site рекомендуем:

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

Поскольку он не требует конфигурации и хранит информацию в обычных дисковых файлах, SQLite является популярным выбором в качестве базы данных для поддержки сайтов малого и среднего размера.

Подробнее here.

Что касается PHP-кода для взаимодействия с базой данных, используйте либо PDO, либо конкретный SQLite extension. PDO более гибкий, поэтому я бы пошел с этим, и он должен работать из коробки - «PDO и драйвер PDO_SQLITE включены по умолчанию с PHP 5.1.0». (reference) Поиск ссылок и руководств очень просто и просто поиск.

+0

Вау! Спасибо за этот ответ. Я даже не думал о SQLite. Раньше я сталкивался с ссылками на него, но я в основном придерживаюсь MySQL, потому что я это хорошо знаю. SQLite выглядит довольно легко. Не говоря уже о том, что SQL легче понять, чем использовать SimpleXML LIbrary в PHP. Я немного знаком с PDO. Я использую ezSQL для большого количества материалов базы данных, и он поддерживает SQLite, поэтому взаимодействие должно быть плавным. – eckenroed

+0

ezSQL - это просто вещь. Это не имеет значения, тем более, что это простой вариант использования. Вы знаете MySQL; вы знаете ezSQL; это будет кусок пирога. Использование синтаксического анализатора XML будет только усложнять ;-) – JCotton

+0

Я много работал с sqlite, чтобы сделать parte статических страниц динамиков custoemers. Я никогда не сталкивался с этим. –

1

Если вы используете PHP, библиотека SimpleXML может предоставить вам то, что вам нужно, и использовать XML таким образом для чего-то вроде вы описываете, может быть, самый простой способ. Вам не нужно беспокоиться о каких-либо конфигурациях MySQL или беспокоиться о том, что клиент что-то испортил. Также может быть проще восстановить и сохранить XML-файл. Опасность может быть будущей масштабируемостью, если вы планируете значительно увеличить сайт. Это все мои 2 цента.

+0

Это хороший ответ. Сайт построен на базе MySQL MySQL, и он бесконечно масштабируемый. Однако целевая страница имеет 4 элемента, которые не обязательно подходят для остальной части области, поэтому я думаю об использовании XML вместо MySQL для этого элемента. – eckenroed

+0

Похоже, он отлично подойдет вам, что вы имеете в виду. Вы можете прочитать доступные функции и посмотреть, покрывает ли это ваши потребности. http://php.net/manual/en/book.simplexml.php – chapman84

Смежные вопросы