| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Создание Облака тегов aka Tag Clound |
| Автор: gta4kv 16.3.2008, 11:18 | ||||||||||||||||||||
| Привет! Хотите предисловие? Будет вам предисловие! Жил-был я. ( http://vingrad.ru/@gta4kv ) И делать мне видимо было нечего. А чем я занимаюсь когда мне нечего делать? Правильно! Пишу бесполезные статьи сюда. Сегодня статья будет о довольно актуальной сейчас теме - "Создание облака тегов". Пожалуй начнем. Сначала создаем класс:
Объявляем переменные:
Создаем функцию __construct():
Здесь:
Здесь:
Тут вроде все понятно, просто перемешиваем массив. Дальше нам пригодится функция подсчета массива.
Тут тоже вроде все понятно. Так как размер букв у нас будет выходить из css нам понадобится функция которая будет выбирать нужный класс:
Здесь:
Здесь:
© http://vingrad.ru/@gta4kv Последнее обновление: Monday, 14 April 2008. ps. про плюсики не забываем, ога? |
| Автор: Хрипа 16.3.2008, 12:05 |
| А исходник ктонить выложит ? Добавлено @ 12:06 Кстати вопрос. Откуда брать слова. Я думаю их должен пользователь делать и слова берутся с базы. Того что если каждый раз генерить по каому-то принцету то Нагрузка на серв и тормажения страници средствами Пыха. Добавлено через 10 минут и 48 секунд Скрипт конечно полезный однако есть недостатки. Надо что бы вы его доработали и добавили настройку скрипта. $CloudFormatLine = true; $CloudPerLineItems = 20; // 20 Слов на одну строчку ------------------------- $CloudFormatTable = true; $CloudPerLineItems = 20; // Выводить вертикально по 20 строчек в каждой по 20 обьектов если фелсе то порядок идёт не горизантально а просто в строчку. ------------------------- Добавить надо работу не тока с индексированым массивом. $isIndex = false; Бегим по мосиву уже в Foreach ------------------------- Доработать скрипт что бы он это всё разлаживал без использования памяти тойсть без ".=" если у меня будет 10 000 слов то страничка будет долго прогружатся. Ну а так отлично будет скрипт полезным. |
| Автор: gta4kv 16.3.2008, 12:16 | ||||
Исходник есть, в последнем "коде". Я же специально написал - "Вот весь код, если кто где запутался" Откуда брать слова это уже сами придумывайте. ;) Добавлено через 1 минуту и 42 секунды
Сделаю попозже. |
| Автор: Feldmarschall 16.3.2008, 13:04 | ||
| Прошу прощения за оффтопик. функция getClassFromPercent напомнила http://nudnik.ru/entry/1154 Уж хотя бы кратные 10 проценты можно было бы вычислять, типа
|
| Автор: gta4kv 14.4.2008, 15:36 |
| Статья Updated. |
| Автор: Glip 14.4.2008, 22:45 | ||
интересное условие. если первая часть true, то вторая автоматически true, а если первая часть false, то если не ошибаюсь при && дальше и не проверяется. или я в чем-то не прав? |
| Автор: 02077461 22.4.2008, 12:15 |
| В нашем-то веке и слова в массиве, а почему бы не использовать RANDOM? http://www.petefreitag.com/item/466.cfm Простой пример -- у тебя 5000+ тагов, тебе нужно вывести X самых популярных из них. Сколько изменений нужно внести в твой код?. Ты показываешь хорошие примеры того, как не надо делать: делаешь рабочий код, который нельзя использовать в реальных условиях. Но, судя по тому, что делаешь это от нечего делать, лучше сделать было можно, но незачем. |
| Автор: awers 22.4.2008, 12:30 |
| 02077461, вы конечно простите, но может сразу тогда и научить код работать с бд, готовить кофе и т.д.? Надо - доробатывайте ) |
| Автор: Feldmarschall 22.4.2008, 12:42 |
| А вот такой вопрос. Кто-нибудь когда-нибудь в жизни пользовался облаком тегов? Ну вот целенаправленно выбирал тег по размеру и читал все записи? или как-то по-другом упользовался? |
| Автор: 02077461 22.4.2008, 12:46 |
| Прощаю. "Научить код", это уж слишком. Вообще-то использовать средства для работы с БД уже давно не ново, и использовать их нужно (не поверите) именно в коде. Ыть... Если пишем код для кофеварки, то надо и кофе научить варить. При написании класса, библиотеки или чего угодно упор надо делать на то, что никто не полезет внутрь смотреть как там надо что-то доработать. Есть API, есть интерфейс класса, есть документация использования. Дорабатывать код -- это костыль. Добавлено через 2 минуты и 34 секунды я пользовался, когда тестировал вывод облака тегов. Даже из самого бесполезного кода можно вынести полезные уроки. Написанным тут пользоваться точно нельзя, но и не для этого оно по-видимому писалось. Очень бы хотелось что бы автор развил свой потенциал и начал его применять в нужном направлении. |
| Автор: gta4kv 22.4.2008, 13:56 |
| 1. Оно не заточено под базу. 2. Как уже говорилось, надо - дорабатывайте. Это всего лишь пример. |
| Автор: boogi 11.6.2008, 13:37 | ||
Жесть. |
| Автор: gta4kv 11.6.2008, 14:55 |
| boogi, раз вы столько просто до жести умный, как вы предложите это сделать лучше? |
| Автор: Feldmarschall 11.6.2008, 15:06 |
| Я предлагал. 3 месяца назад |
| Автор: gta4kv 11.6.2008, 18:00 |
| Feldmarschall, ыы. пропустил) |