avrei bisogno del vostro aiuto. stavo provando lo script di questa guida per creare le immagini quadrate. a funzionare funziona perche' l'immagine quadrata viene creata ma non riesco a capire perche' se provo con più di una immagine mi mostra sempre solo la prima.
questo e' tutto il mio file, non c'è codice html. grazie per l'attenzione.
http://php.html.it/articoli/leggi/93...i-gd-in-php/3/
Codice PHP:
<?php
$immagine = 'foto1.jpg';
$immagine2 = 'foto2.jpg';
$immagine3 = 'foto3.jpg';
function GDVersion(){
if( !in_array('gd', get_loaded_extensions()) ) return 0;
elseif( isGD2supported() ) return 2;
else return 1;
}
function isGD2supported(){
global $GD2;
if( isset($GD2) AND $GD2 ) return $GD2;
else{
$php_ver_arr = explode('.', phpversion());
$php_ver = intval($php_ver_arr[0])*100+intval($php_ver_arr[1]);
if( $php_ver < 402 ){ // PHP <= 4.1.x
$GD2 = in_array('imagegd2',get_extension_funcs("gd"));
}
elseif( $php_ver < 403 ){ // PHP = 4.2.x
$im = @imagecreatetruecolor(10, 10);
if( $im ){
$GD2 = 1;
@imagedestroy($im);
}
else $GD2 = 0;
}
else{ // PHP = 4.3.x
$GD2 = function_exists('imagecreatetruecolor');
}
}
return $GD2;
}
function OutThumb($src, $l){
$size = getimagesize($src);
if( $size[2] == 2 ){$im = @imagecreatefromjpeg($src);}
elseif( $size[2] == 1 ){$im = @imagecreatefromgif($src);}
elseif( $size[2] == 3 ){$im = @imagecreatefrompng($src);}
if( $size[0]>$l or $size[1]>$l ){
$centerX = $size[0]/2;
$centerY = $size[1]/2;
if( $size[0] > $size[1] ){
$luy = 0;
$lux = $centerX-$centerY;
$rdy = $size[1];
$rdx = $size[1];
}
else{
$lux = 0;
$luy = $centerY-$centerX;
$rdx = $size[0];
$rdy = $size[0];
}
if( (GDVersion() == 2) AND ($size[2] != 1) ){
$new = imagecreatetruecolor($l, $l);
imagecopyresampled($new, $im, 0, 0, $lux, $luy, $l, $l, $rdx, $rdy);
}
else{
$new = imagecreate($l, $l);
imagecopyresized($new, $im, 0, 0, $lux, $luy, $l, $l, $rdx, $rdy);
}
}
else{
$new &= $im;
}
header('Content-Type: ' . $size['mime']);
if( $size[2] == 2 ){@imagejpeg($new, $fileOut, 100);}
elseif( $size[2] == 1 ){@imagegif($new, $fileOut);}
elseif( $size[2] == 3 ){@imagepng($new, $fileOut);}
@imagedestroy($im);
@imagedestroy($new);
}
$a = OutThumb($immagine, 50);
$b = OutThumb($immagine2, 50);
$c = OutThumb($immagine3, 50);
echo $a;
echo $b;
echo $c;
?>