[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Описание статьи из содержимого
h234
Предположим есть лента новостей (или статей), без разницы.
Простейшая структура БД: Id, Title, Text (Ид, Заголовок, Текст)
Так вот как лучше организовать список статей с описанием?

Т.е. например:
Статья 1
Стаья о том, как...[Читать далее]

А содержимое статьи будет таким:
Статья о том, как программировать на PHP. =)

Как вариант можно выводить заголовок и часть содержимого (например: echo $name; echo substr($text, 0, 150);)
Но здесь есть маленькая загвоздочка. Некоторые статьи могут иметь следующий вид в БД :
В FALSE преобразуются следующие значения:
• логическое False
• целый ноль ( 0 )

Их код в БД:
<p class="MsoNormal"><span style="font-family: Verdana, sans-serif;">В </span><span style="font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman'; color: darkred; mso-fareast-language: RU;">FALSE</span><span style="font-family: Verdana, sans-serif;"> преобразуются следующие значения:</span></p>
<ul>
<li><span
style="text-align: justify; text-indent: -18pt; font-family: Verdana, sans-serif;">логическое </span><span style="text-align: justify; text-indent: -18pt; font-family: 'Courier New'; color: #8b0000;">False</span></li>
<li><span
style="text-align: justify; text-indent: -18pt; font-family: Verdana, sans-serif;">целый ноль ( </span><span style="text-align: justify; text-indent: -18pt; font-family: 'Courier New'; color: #8b0000;">0</span><span style="text-align: justify; text-indent: -18pt; font-family: Verdana, sans-serif;"> )</span></li>

И если взять часть текста длиной, скажем в 150 символов, то ничего толкового не выйдет для описания статьи.
Страница также будет не валидна при этом.
Как вариант можно добавить в БД поле, в котором хранить описание, которое пользователь вводит сам. Но это создает избыточность.
Есть ли какие-нибудь идеи, как из содержимого статьи сделать описание для статьи без использования дополнительного поля в БД?




Спустя 16 минут, 39 секунд (18.07.2012 - 17:10) Игорь_Vasinsky написал(а):
1 - добавть дополнительное поле для shorttext
2 - mb_substr() полной статьи.

как душе угодно.

Спустя 4 часа, 11 минут, 43 секунды (18.07.2012 - 21:21) h234 написал(а):
Цитата (Игорь_Vasinsky @ 18.07.2012 - 14:10)
1 - добавть дополнительное поле для shorttext
2 - mb_substr() полной статьи.

как душе угодно.

1. Дополнительное поле для описания статьи? То то и оно. Как правило описание - это несколько строк начала статьи. Собственно и смущает избыточность.
2. mb_substr() полной статьи. Нее, зачем это? С таким же успехом просто саму статью вывести можно, без лишней функции. Мысль о том, чтобы выводить не полный текст статьи, а ее часть в списке статей, как скажем на хабре или другом новостном ресурсе.

Можно конечно strip_tags для статьи сделать, и потом вывести часть текста, но это какое то извращение. А вдруг вначале статьи идет таблица. Бред получиться.

Мда, единственный вариант вырисовывается - это все же дополнительное поле!

Спустя 4 минуты, 16 секунд (18.07.2012 - 21:26) Игорь_Vasinsky написал(а):
Цитата
Можно конечно strip_tags для статьи сделать, и потом вывести часть текста, но это какое то извращение. А вдруг вначале статьи идет таблица. Бред получиться.

см п.1 - описание статьи - это не обязательно начало полной статьи, и там свободно можно предусмотреть и отсутствие таблиц, картинок и прочего - т.е. уложить "эпилог"

Спустя 12 минут, 57 секунд (18.07.2012 - 21:38) h234 написал(а):
ОК,в общем введу дополнительное поле!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.