Есть 4 таблицы, используемые для хранения тегов:метки Php дисплей
tagovi, tagovi_vijesti, tagovi_blogovi, tagovi_dogadjanja
Структура О.Д. таблицы tagovi
:
id - name
Структура таблицы tagovi_vijesti
:
id - vijesti_id - tag_id
То же самое для другие две таблицы.
На главной странице я отображать тег из всех трех таблиц таким образом:
$sql = "SELECT
T.id AS id, T.name AS tag,
TV.id AS tag_vijest_id, TD.id AS tag_dogadjanje_id, TB.id AS tag_blog_id,
COUNT(*) ponavljanje
FROM tagovi AS T
LEFT JOIN tagovi_vijesti AS TV ON T.id = TV.tag_id
LEFT JOIN tagovi_dogadjanja AS TD ON T.id = TD.tag_id
LEFT JOIN tagovi_blogovi AS TB ON T.id = TB.tag_id
WHERE TV.id IS NOT NULL
GROUP BY id
ORDER BY id DESC
LIMIT 35";
$sql_result = mysql_query($sql,$connect)
or die("Upit nije izvrsen");
while ($row = mysql_fetch_array($sql_result)){
$tag_id = $row["id"];
$tag_url = $row["tag"];
$tag = preg_replace('/-/', ' ', $tag_url);
$tag_ponavljanje = $row["ponavljanje"];
if($tag_ponavljanje >= 10 && $tag_ponavljanje < 20) $fontSize = "14px";
elseif($tag_ponavljanje >= 20 && $tag_ponavljanje < 30) $fontSize = "16px";
elseif($tag_ponavljanje >= 30 && $tag_ponavljanje < 40) $fontSize = "18px";
elseif($tag_ponavljanje >= 40 && $tag_ponavljanje < 60) $fontSize = "20px";
elseif($tag_ponavljanje >= 60) $fontSize = "24px";
else $fontSize = "12px";
echo " <a href = \"$ispisi_link/tag/$tag_url\" style=\"font-size: $fontSize;\">$tag</a> ";
}
Но я не думаю, что это идеальный способ сделать это, потому что теги сортируются по идентификатору, а затем все эти старый теги больше никогда не будут отображаться, потому что результаты сортируются по id. Какой экран (запрос) вы используете? Что бы вы посоветовали мне показывать теги? Лучше ли сортировать их по количеству повторений каждого тега (в моей таблице повторение называется «понавляние»)? Если я использую этот путь, то я немного боюсь, что будут теги, которые будут повторяться в большинстве контента, и новый никогда не будет отображаться на главной странице. Или я могу использовать два запроса, один для новых тегов и один для тех, кто в основном используется?
Спасибо, Ile
Я думаю, что этот пример показывает, почему предпочтительны имена переменных только для английского. :-P – Tomalak
Я думаю, что нетрудно сделать вывод о том, что означает «tagovi» или «blogovi»: P: D –
@ile +1, но tagovi_vijesti немного сложнее grok –