De eerste fout die je maakt is dat je eerst een echo doet en daarna de header functie gebruikt.
Link gekopieerd
en je output een afbeelding maar plaatst ook html code eromheen. Dat maakt het een corrupte afbeelding
Link gekopieerd
Ik ben even verder gaan zoeken, maar nog steeds hetzelfde resultaat:
Ik heb e.e.a. vergeleken met het volgende script:
http://www.phphulp.nl/php/scripts/9/229/
De website draait bij XS4ALL met gebundelde GD-library, dus de functie zou moeten werken, maar helaas, ik zie niet wat ik fout doe:
<?php
$image = "fotos/testrotate/klein/DSC00318.JPG";
if ($_GET['degrees'])
{
header('content-type: image/jpeg');
$image = imagecreatefromjpeg($image);
$image = imagerotate($image, $_GET['degrees'], 0);
imagejpeg($image);
}
echo"<p>Gedraaide foto:<br><img src=\"" . $image . "\" alt=\"\" /></p>";
?>
Ik ben eruit:
de laatste regel heb ik aangepast, zodat de foto wordt weggeschreven naar het origineel bestand, alleen nu dus in gedraaide vorm:
<?php
$original = "fotos/testrotate/klein/DSC00162.JPG";
if ($_GET['degrees'])
{
header('content-type: image/jpeg');
$image = imagecreatefromjpeg($original);
$rotated = imagerotate($image, $_GET['degrees'], 0);
imagejpeg($rotated, $original, 90);
}
echo"<p>Gedraaide foto:<br><img src=\"" . $original . "\" alt=\"\" /></p>";
?>
Link gekopieerd