Hoi, ik wil fotos kunnen draaien op een website, ik heb wel wat code hiervoor gevonden, maar ik krijg alleen allemaal rare tekentjes te zien, geen gedraaide foto.


<?
$image = "fotos/dsc00124.jpg";	
echo"Originele foto:<br><img src='$image' border='0'><br>";

$degrees = 90;
header('Content-type: image/jpeg') ;
$source = imagecreatefromjpeg($image) ;	
$rotate = imagerotate($source, $degrees, 0) ;
imagejpeg($rotate) ;

echo"Gedraaide foto:<img src='$image' border=\"0\">";
?>


wat ik krijg te zien is ongeveer:

ÿØÿàJFIFÿþ>CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality ÿÛC    $.' ",#(7),01444'9=82<.342ÿÛC  2!!22222222222222222222222222222222222222222222222222ÿÀÈ–"

Kortom, er gebeurt niets, en ik zoek me een ongeluk...
De eerste fout die je maakt is dat je eerst een echo doet en daarna de header functie gebruikt.
en je output een afbeelding maar plaatst ook html code eromheen. Dat maakt het een corrupte afbeelding
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>";
?>

Reageren