Ik ben bezig met een gastenboek en ik wil dat de plaatjes niet breder kunnen worden van bijv 800px.

Hoe doe ik dat?
En dan niet aankomen met:
<img src="ff" width=800>, want daar heb ik dus niks aan, want als het plaatje nou maar een breedte heeft van 300???

Tnx alvast..
Hmm, het werkt niet :(.

Ik krijg deze error:
Warning: imagesx(): supplied argument is not a valid Image resource in H:\Program Files\Apache Group\Apache2\htdocs\upload\delete.php on line 2

En ik heb deze code:
<?
echo imagesx('http://www.phphulp.nl/imgs/layout/top.gif';);
?>

Wat is er mis??
Woeps laat maar, ik heb al iets anders:

<?
$url = 'plaatje.imgext';

$maxwidth = '400';
$maxheigth = '200';

list($width, $height) = getimagesize($url);
$maxbreedte = max($maxwidth,$width);
$maxhoogte = max($maxheigth,$width);

if($maxwidth == $maxbreedte) { $breedte = $width; } else { $breedte = $maxwidth; }

if($maxheigth == $maxhoogte) { $hoogte = $height; } else { $hoogte = $maxheigth; }

?>
<img src='<? echo $url; ?>' height='<? echo $hoogte; ?>' width='<? echo $breedte; ?>'>


Is dat een goed script?
Nee. Voeg nu even een heel smal maar een hoogt plaatjes toe. dan zal hij ook niet mooi uit te komen te zien

Mijn code:
<?
$img = "URL";
$breedte = imagesx($img);
$hoogte = imagesy($img);
if($breedte > 500){
$ratio = $breedte / 500;
$hoogte = $hoogte / $ratio;
$hoogte = round($hoogte);
$breedte = 500;
}
?>
<img src='<? echo $img; ?>' height='<? echo $hoogte; ?>' width='<? echo $breedte; ?>'>
Dit is alleen voor de breedte :)
In mijn upload script werkt het wel :)
mensen wat doen we allemaal moeilijk
<?
$url = 'plaatje.img';
$max_width = 600;
$max_height = 600;

$size = getimagesize($url);
echo '<img src="'.$url.'" ';
if($size[0]>$max_width)echo 'width="'.$max_width.'" ';
if($size[1]>$max_height)echo 'height="'.$max_height.'"';
echo '>';
?>
Rick...

Wellicht werkt dat wel maar dan verkloot je de balans van een plaatje kompleet ...

Om dat te behouden ga je de langste waarde en de korste waarde naar ratio verkleinen ...

dus als je lengte 600 is en je breedte 10 en je verkleint je lengte naar 300 dan moet je je breedte ook halveren ander krijg je een 'dik' plaatje

Mvg,

Peanuts
Dit script houd daar wel rekening mee, punt is alleen dat door "getimagesize" het plaatje wel zich op jouw server moet bevinden. Je kan dus niet ff van www.google.nl/blablalba/..../babe1.jpg verkleinen. Hoe dat werkt ben ik nog naar op zoek :)

<?
function resizeimage ($av, $fac) {
if(file_exists($av))
{
ClearStatCache();

list($width, $height) = getimagesize($av);


if($width > $height)
{
$factor=$fac/$width;
$widthf=$fac;
$heightf=$factor*$height;

echo "<img src=\"".$av."\" width=\"".$fac."\" height=\"".$heightf."\"><br>";

} elseif ($width < $height) {
$factor = $fac/$height;
$heightf=$fac;
$widthf=$factor*$width;
echo "<img src=\"".$av."\" width=\"".$widthf."\" height=\"".$fac."\"><br>";

} elseif ($width = $height) {

echo "<img src=\"".$av."\" width=\"".$fac."\" height=\"".$fac."\"><br>";
}

}

else {
echo $av." bestaat niet !!!";
}

}

resizeimage("babe1.jpg","75");
?>

Reageren