Фрилансеры предложат решение вашей задачи уже через несколько минут!

Публикация заказа на фриланс бирже не займет много времени.

12 лет назад
Евгений О.
39 лет, Россия
17 лет в сервисе
Был онлайн 7 месяцев назад
12 лет назад

Есть текстовые файлы размеров по 100-500кб.
Нужно разместить их на сайте в виде статей.
Хранится тексты в mysql, 1 файл – одна статья.
Но выводить нужно по страницам заданного размера (задается в переменной, например, $MAX_PAGE_LEN).
Я вижу 2 пути решения:

1. Разбиение на лету.
Выбирается целая статья и выводится только ее часть – текущая страница.
2. Разбиение заранее.
Специальный скрипт проверяет всю базу статей и расставляет в тексте статей метки (например, <page>) через каждые $MAX_PAGE_LEN символов (конечно, нужно делать разбиение так, чтобы страница заканчивалась на точке или запятой).
А также нужна функция, которая расставляет метки в статье в случае ее добавления или редактирования.

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

Недостатки второго способа: - все равно нужно вырезать часть текста по меткам для каждого пользователя. И если будет нужно поменять число $MAX_PAGE_LEN, то нужно будет снова обрабатывать всю базу. Хотя, изменять переменную $MAX_PAGE_LEN придется очень редко – думаю, всего 2-3 раза, пока не подберется оптимальный размер страниц.

Сделать каждую страницу отдельной статьей – уже нет возможности (точнее, не хочется), т.к. уже есть сайт с опр. БД, переделывать которую полностью не вижу смысла.

В общем, нужна функция:
На входе: текст статьи, номер текущей страницы в статье.
На выходе: текст текущей страницы статьи.
И в зависимости от алгоритма: функция расставления меток концов страниц и скрипт расставления меток для всех статей в базе.

Выслушаю ваши предложения по срокам и ценам, а также алгоритму работы (сам PHP знаю около 5 лет, но сейчас редко пишу).

  1. Прием заявок
  2. Выбор исполнителя
  3. Выполнение заказа
  4. Обмен отзывами
Выбранный исполнитель
Александр Еремеев
42 года, Украина
12 лет в сервисе
Был онлайн 11 лет назад
12 лет назад

$50

2 дня

Александр Еремеев
42 года, Украина
12 лет в сервисе
Был онлайн 11 лет назад
12 лет назад

Другие заказы в категории «Веб-программирование»

Здесь заказчик и фрилансеры могут обсуждать заказ до начала его выполнения.
Фрилансеры могут участвовать в обсуждении только после подачи заявки.
Здесь заказчик будет контролировать выполнение заказа и общаться с исполнителем.
Доступ к этому разделу имеют только заказчик и выбранный исполнитель.
Все материалы этого раздела закрыты от поисковых систем.