Autor
Wiadomość
Resize avatar on upload
T-kOrreD
Posty: 7 Piwa: 5 /1 Skąd: localhost
Wysłany: Pon 12 Cze, 2006 Resize avatar on upload
Adres forum: http://forum.bbw.lebork.pl
Automatycznie dopasowuje avatar przy wgrywaniu, je?eli przekracza dozwolone rozmiary, zachowuj?c proporcje. Niestety nie zachowuje przy tym przezroczysto?ci.
Znajd? w includes/usercp_avatar.php:
Kod if ( $width > 0 && $height > 0 && $width <= $board_config['avatar_max_width'] && $height <= $board_config['avatar_max_height'] )
Przed, dodaj:
Kod if ( $width > $board_config['avatar_max_width'] )
{
$resize_to_width = $board_config['avatar_max_width'];
$resize_to_height = $board_config['avatar_max_width'] / $width * $height;
}
else
{
$resize_to_width = $width;
$resize_to_height = $height;
}
if ( $resize_to_height > $board_config['avatar_max_height'] )
{
$resize_to_width = $board_config['avatar_max_height'] / $height * $width;
$resize_to_height = $board_config['avatar_max_height'];
}
if ( $resize_to_width != $width || $resize_to_height != $height )
{
if ( $imgtype == '.jpeg' || $imgtype == '.jpg' )
{
$resized_avatar = imagecreatetruecolor($resize_to_width, $resize_to_height);
$image = imagecreatefromjpeg($avatar_filename);
imagecopyresampled($resized_avatar, $image, 0, 0, 0, 0, $resize_to_width, $resize_to_height, $width, $height);
imagejpeg($resized_avatar, $avatar_filename, 85);
imagedestroy($resized_avatar);
imagedestroy($image);
}
if ( $imgtype == '.gif' )
{
$resized_avatar = imagecreatetruecolor($resize_to_width, $resize_to_height);
$image = imagecreatefromgif($avatar_filename);
imagecopyresampled($resized_avatar, $image, 0, 0, 0, 0, $resize_to_width, $resize_to_height, $width, $height);
imagegif($resized_avatar, $avatar_filename);
imagedestroy($resized_avatar);
imagedestroy($image);
}
if ( $imgtype == '.png' )
{
$resized_avatar = imagecreatetruecolor($resize_to_width, $resize_to_height);
$image = imagecreatefrompng($avatar_filename);
imagecopyresampled($resized_avatar, $image, 0, 0, 0, 0, $resize_to_width, $resize_to_height, $width, $height);
imagepng($resized_avatar, $avatar_filename);
imagedestroy($resized_avatar);
imagedestroy($image);
}
list($width, $height, $type) = @getimagesize($avatar_filename);
}
usercp_avatar.php.zip Gotowy plik
Pobierz Plik ściągnięto 686 raz(y) 4,82 KB
_________________ Kto? Ja?
Więcej szczegółów
Wystawiono 5 piw(a):wacusiek , bastex , sawerius , 5eb0l , Woonski
kidzior
Niezale?ny
Posty: 775 Piwa: 300 /63 Skąd: Krak?w
Wysłany: Pon 12 Cze, 2006
Adres forum: http://forum.niezal.org/
Po wgraniu pliku z za??cznika mam: Obrazek musi by? typu JPG, GIF lub PNG , czyli stary b??d. co jest grane?
_________________WHEN (NIE.DZIALA)
LOOP
UNTIL (DZIALA)
T-kOrreD
Posty: 7 Piwa: 5 /1 Skąd: localhost
Wysłany: Pon 12 Cze, 2006
Adres forum: http://forum.bbw.lebork.pl
Czy przed modyfikacj? pliku tego b??du nie by?o? Nie wiem, w jaki spos?b ten kod mo?e wp?yn?? na pojawianie si? tego b??du. Typ jest sprawdzany przed zmian? rozmiaru...
_________________ Kto? Ja?
kidzior
Niezale?ny
Posty: 775 Piwa: 300 /63 Skąd: Krak?w
Wysłany: Pon 12 Cze, 2006
Adres forum: http://forum.niezal.org/
C??, tak si? sk?ada, ?e problem by?.
_________________WHEN (NIE.DZIALA)
LOOP
UNTIL (DZIALA)
T-kOrreD
Posty: 7 Piwa: 5 /1 Skąd: localhost
Wysłany: Wto 13 Cze, 2006
Adres forum: http://forum.bbw.lebork.pl
(Z forum Przema)
Znajd?:
Kod function check_image_type(&$type, &$error, &$error_msg)
{
global $lang;
switch( $type )
{
case 'image/jpeg':
case 'image/jpg':
case 'image/pjpeg':
case 'jpeg':
case 'pjpeg':
case 'jpg':
return '.jpg';
break;
case 'image/gif':
case 'gif':
return '.gif';
break;
case 'image/png':
case 'png':
return '.png';
break;
default:
$error = true;
$error_msg = (!empty($error_msg)) ? $error_msg . '<br />' . $lang['Avatar_filetype'] : $lang['Avatar_filetype'];
/* === DOPISA? === */
$error_msg.=" (typ pliku: $type)";
/* === DOPISA? === */
break;
}
return false;
}
Zerknij, jaki typ pliku Ci wyrzuca.
_________________ Kto? Ja?
kidzior
Niezale?ny
Posty: 775 Piwa: 300 /63 Skąd: Krak?w
Wysłany: Wto 13 Cze, 2006
Adres forum: http://forum.niezal.org/
T-kOrreD napisał/a Zerknij, jaki typ pliku Ci wyrzuca.
Obrazek musi by? typu JPG, GIF lub PNG (typ pliku: image/pjpeg)
_________________WHEN (NIE.DZIALA)
LOOP
UNTIL (DZIALA)
T-kOrreD
Posty: 7 Piwa: 5 /1 Skąd: localhost
Wysłany: Wto 13 Cze, 2006
Adres forum: http://forum.bbw.lebork.pl
pjpeg ? No to moim zdaniem to nie jest ?aden b??d skryptu, tylko niew?a?ciwy typ pliku. Otw?rz go z GIMPa albo IrfanView i zapisz jako normalny JPEG.
_________________ Kto? Ja?
kidzior
Niezale?ny
Posty: 775 Piwa: 300 /63 Skąd: Krak?w
#Gracek
Posty: 166 Piwa: 141 /13 Skąd: Ostro??ka
kidzior
Niezale?ny
Posty: 775 Piwa: 300 /63 Skąd: Krak?w
Wysłany: Sro 14 Cze, 2006
Adres forum: http://forum.niezal.org/
Pr?bowa?em wrzuci? obrazek jpg i r?wnie? wywali?o:
Cytat Obrazek musi by? typu JPG, GIF lub PNG (typ pliku: image/pjpeg)
Po co mi sprawdza? na innych forach, kiedy ma to dzia?a? na moim.
_________________WHEN (NIE.DZIALA)
LOOP
UNTIL (DZIALA)
#Gracek
Posty: 166 Piwa: 141 /13 Skąd: Ostro??ka
art182
Posty: 5 Piwa: 1 /18 Skąd: PL
Wysłany: Sro 14 Cze, 2006
Adres forum: http://kage.pl/forum/
jezu ... avatar nie bedzie dzialal bo to jak juz pisal ktos nie JPG a PJPG ...
czyli progressive jpg czy cos tam takiego ...
obrazka nie wgrasz nigdzie ...
zrob inny i napewno bedzie dzialal ..
bo kod jest wporzadku ( uzywam u siebie )
_________________[ anime fan ]
kidzior
Niezale?ny
Posty: 775 Piwa: 300 /63 Skąd: Krak?w
Wysłany: Pią 16 Cze, 2006
Adres forum: http://forum.niezal.org/
Gracek napisał/a to wrzuc avatar z rozszerzeniem .fwdgfw8fg42f i sie dziw czemu nie dziala
art182 napisał/a jezu ... avatar nie bedzie dzialal bo to jak juz pisal ktos nie JPG a PJPG ...
czyli progressive jpg czy cos tam takiego ...
obrazka nie wgrasz nigdzie ...
zrob inny i napewno bedzie dzialal ..
bo kod jest wporzadku ( uzywam u siebie )
Heh... Problem wyskakuje co bym nie wrzuci?! Oczywi?cie rozs?dnego. Pr?bowa?em tego, co mam tutaj na forum:
Cytat Obrazek musi by? typu JPG, GIF lub PNG (typ pliku: image/pjpeg)
Pr?bowa?em zwyk?ego .gif-a:
Cytat Obrazek musi by? typu JPG, GIF lub PNG (typ pliku: image/pjpeg)
To samo! Gdzie? musi by? b??d - tylko gdzie
Juz rozumiecie?
_________________WHEN (NIE.DZIALA)
LOOP
UNTIL (DZIALA)
art182
Posty: 5 Piwa: 1 /18 Skąd: PL
Wysłany: Pią 16 Cze, 2006
Adres forum: http://kage.pl/forum/
widocznie twoj serwer ma egzotyczn? konfiguracje ( wiem bo tez tak kiedys mialem )
wrzuc po prostu przy sprawdzaniu formatu pliku aby akceptowal tez pjpg ...
tyle .... kod do zmniejszania nie ma nic do rzeczy ...
zreszta tam tez mozesz dodac typ pliku pjpg ...
edit: ee faktycznie ... no to nie wiem
kod jest dobry bo sam uzywam i wszystko dzia?a jak najlepiej
_________________[ anime fan ]
Ostatnio zmieniony przez art182 Pią 16 Cze, 2006, w całości zmieniany 1 raz
johnny
Posty: 7 Piwa: 2 /3
Wysłany: Pią 16 Cze, 2006
Adres forum: www.c75.pl
art182 napisał/a wrzuc po prostu przy sprawdzaniu formatu pliku aby akceptowal tez pjpg ...
to chyba nic nie da poniewaz jak sam napisal mu nawet gif ani jpg nie przechodzi