Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> miniaturki - ale bez miniaturek
lled3
post
Post #1





Grupa: Zarejestrowani
Postów: 91
Pomógł: 0
Dołączył: 7.12.2007

Ostrzeżenie: (0%)
-----


mam na stronie obsluge BBcode

  1. <?php
  2. $str = preg_replace("#[img](.*?)[/img]#si", "<img src=\"1\" style=\"vertical-align:middle\" border=\"0\" alt=\"Obrazek\" />", $str);
  3. ?>


jednak on "wyświetla" wszytsko - i zdarza sie ze ktos wstawi zaszeroki obrazek i rozwala stronę.

Widziałem w jakims modzie phpBB, skrypt który mierzy szerokosc obrazka - i przy wysiwetlaniu zmniejsza go (tylko przy wyswietlaniu) podajac width i height - a po kliknieciu w nowym oknie otwiera sie 100%.

Jak taki skrypt wykonac ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
JoShiMa
post
Post #2





Grupa: Zarejestrowani
Postów: 1 374
Pomógł: 149
Dołączył: 1.03.2006

Ostrzeżenie: (0%)
-----


Poniżej funkcja, która skaluje tak, że dłuższy bok ma 400px
  1. <?php
  2. $max = 400;
  3. $rozmiar = GetImageSize($foto);
  4. if($rozmiar[0]<$rozmiar[1]){
  5. $wspolczynnik = $rozmiar[0]/$max;
  6. }else{
  7. $wspolczynnik = $rozmiar[1]/$max;
  8. }
  9. $szer = (int)($rozmiar[0]/$wspolczynnik);
  10. $wys = (int)($rozmiar[1]/$wspolczynnik);
  11. ?>


Jeśli chcesz żeby szerokość była 400px bez względu na to czy to dłuższy bok to możesz tak:
  1. <?php
  2. $max = 400;
  3. $rozmiar = GetImageSize($foto);
  4. $wspolczynnik = $rozmiar[0]/$max;
  5. $szer = (int)($rozmiar[0]/$wspolczynnik);
  6. $wys = (int)($rozmiar[1]/$wspolczynnik);
  7. ?>


Ten post edytował JoShiMa 5.08.2008, 08:33:48
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 17:46