Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CSS][PHP]Chmura tagów + css + sql
Forum PHP.pl > Forum > Przedszkole
roghatt
Witam
Posiadam skrypt wyszukiwarki, użytkownik wpisuje słowo i wyświetla mu wyniki, ale dodatkowo słowo jest wpisywane do bazy, jeśli słowo jest w bazie to licznik słowa się powiększa o jeden, jeśli nie to go dopisuje w nowym polu.
Teraz przyszedł czas kiedy mógłbym te słowa wykorzystać i pomyślałem o tej chmurze tagów, tylko jak to ugryźć? Im większy licznik słowa to tym większa czcionka danego wyświetlanego słowa. Ale jak to zrobić aby w css wielkość czcionki była uzależniona od pewnej wartości w bazie?
Tutaj chyba jakieś przedziały muszę ustalić? Występowanie słowa między 100 a 400 to wtedy wielkość czcionki np 12. Ale jak to dopasować do cssa aby w nim wszystko było?
buliq
A co w tym trudnego?

  1. <a href="" style="font-size:12px">aaaaa</a>


questionmark.gif
mat-bi
Tak, ucz złych praktyk. Nie łatwiej nawet użyć klasy? Przecież wtedy zmieniasz ustawienia w jednym miejscu, nie w 50.
roghatt
buliq Ty chyba nie zrozumiałeśsmile.gif
Tagi będą przecież wyświetlane z bazy automatycznie i nie zawsze będą takie same. Ja to wypisuje z bazy przez while, więc w jaki sposób to sobie wyobrażasz zwykłym htmlem? smile.gif Czcionka ma się sama powiększać w zależności od wartości słowa.

Chodzi mi o to, dane słowo w bazie ma wartość np. 20 (20 razy wpisano to słowo w wyszukiwarkę), inne słowo ma wartość np. 1, inne 100, inne 60.
Im większa ta wartość w bazie dla danego słowa to tym czcionka większa.
Nie będę przecież co chwile sprawdzał jaki licznik ma dane słowo i sam w klasie wpisywał wielkość czcionki.
Chcę to zrobić przedziałami, jeśli wartość z bazy jest między 1 a 10 to wielkość czcionki 8, między 11 a 40 wielkość czcionki 9, itd.
Ale ja to chcę zrobić w css, a takie warunki trzeba jednak ustalić w PHP.
mat-bi
Po prostu dajesz warunki w php, które dają daną klasę dla elementu, który jest potem obsługiwany przez CSS
buliq
tylko po co tworzyć 50 klas skoro można:

  1. $size=10;
  2. if ($ilosc_wyswietlen>100) $size+=2;
  3. else
  4. if ($ilosc_wyswietlen>500) $size+=4;
  5. ...
  6.  
  7. echo '<a href="" style="font-size:'.$size.'"px>';


Gdybym miał zmieniać te klasy css to tak czy siak w 50 miejscach ....
roghatt
trochę odwrotnie to musialo byc i brakuje cudzyslowia ale wiem ze pisales to "na kolanie" smile.gif dzięki buliq bo to mi duzo podpowiedzialo. Juz wszystko dziala jak chcialem.
buliq
Nie brakuje cudzysłowie tylko px w złym miejscu smile.gif. To jest tylko przykład, dostosowac musisz go do potrzeb jednak wydaje się najlepszym rozwiązaniem.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.