Архив рассылки -программирование на PHP




Причем, делить надо автоматически...


Причем, делить надо автоматически, а не вручную, во время выкладывания на сайт. Почему? А потому, что никогда не известно, в каком виде и где этот текст может понадобиться. Поэтому, он должен лежать в оригинальном виде, а отдавать его пользователю посредством http, e-mail, ftp или еще как-то — это уже наша задача, которую мы сейчас и сформулируем.

Итак. Необходимо написать код, занимающийся разбиением выводимого текста на страницы по сколько-то килобайт в каждой. Количество килобайт — величина переменная, содержащаяся в переменной $PAGE_TEXT_SIZE.

Дополнительное условие — текст не должен разрываться посреди слова или предложения, если это не авторский перевод строки (стихи, или что-то подобное).

Ну и вывод списка всех страниц, конечно. Чтобы на каждой странице было видно — сколько прочли, текущий номер и сколько еще осталось.

Осилим?

И я, как это уже стало традицией, жду два варианта решения этой задачи:

1. Выделение из текста текущей страницы в оперативной памяти (более простой вариант, на мой взгляд)

2. Вариант, когда в оперативную память текст загружается кусками, не превышающими определенный размер. Например, не более $PAGE_TEXT_SIZE * 2.

Лучшая из реализаций данной задачи займет свое достойное место в первом же очередном выпуске "Пишем на PHP", как только будет создана.

Ну вот. Ответы, как всегда, принимаю только в форуме, жду повышенной активности.

А теперь, к долгожданному голосованию.

Что там я писал в прошлый раз? А, надо нарисовать форму для голосования.

Что ж... рисуем... в файл /inc/voting_form.inc мы ее рисуем, да?

За основу я возьму форму из добавления текста. Чем-то они похожи.

И вот, значит, какая у меня получилась форма:

" method="post" class="form_"> Оставьте свое мнение о прочитанном
out_text_id; ?>"> " class="form_text_urgent" style="width: 150pt;"> — ваше имя
" class="form_text_urgent" style="width: 150pt;"> — ваш email

< ? foreach($my->VOTING_MENU as $k => $v) { if($vote==$v) $selected="selected"; else $selected=""; echo "$k\n"; } ?>

Поясните вашу оценку комментарием:
< ? echo $comment; ?>




Предупреждение: все оскорбительные и не относящиеся к теме текста комментарии удаляются модератором сайта.

Хорошенькая, правда?

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









    Начало    Назад    Вперед




Книжный магазин