Ik ben hier al enkele uren aan het trachten om enkele scripts samen te voegen tot één script. Er is hier namelijk wel een resize en upload script te vinden, maar deze werkt enkel met vervorming.
Nu, het script wat ik tracht te maken is als volgt:
je hebt een bestand upload.php waarvan het eerste gedeelte zorgt voor het uploaden en het checken van extensie. Het tweede gedeelte haalt dan de image uit de uploads folder (waar de file is ge-upload...), resized deze foto in het 1280x800 formaat, en slaat deze op in de uploads/wxga folder. Althans, dat is wat het script ZOU moeten doen. de scritps werken afzonderlijk perfect, maar als ik ze samenvoeg krijg ik volgende error:
Parse error: parse error, unexpected T_VARIABLE in /home/user/kristof.jacobs/www/upload/upload.php on line 58
Iemand enig idee wat er fout gaat? Mijn php kennis is zeer beperkt, maar we leren bij :-)
Hieronder het script:
<?
//In het bovenste gedeelte wordt de file ge-upload
global $_FILES;
$filename = $_FILES['userfile']['name'];
$allow[0] = "jpg";
$allow[1] = "gif";
$allow[2] = "bmp";
$allow[3] = "JPG";
$allow[4] = "JPEG";
$allow[5] = "jpeg";
if ($_POST["newname"])
$uploadname = $_POST['newname'];
else
$uploadname = $_FILES['userfile']['name'];
$extentie = substr($uploadname, -3);
for ($i = 0; $i < count($allow); $i++)
{
if ($extentie == $allow[$i])
{
$extentie_check = "ok";
$i = count($allow) + 7; // om loop te beindigen
}
}
if ($extentie_check)
{
if($_FILES['userfile']['size'] > 999999999) {
echo "Het bestand is te groot!";
} else {
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
move_uploaded_file($_FILES['userfile']['tmp_name'], "uploads/" . $uploadname);
echo "Het bestand is geupload onder de naam: $uploadname";
}
}
}
else
{
echo "De extensie wordt niet toegelaten op deze server!";
}
//Het gedeelte hieronder resized de picture die ge-upload werd.
error_reporting(E_ALL);
// $breedte is nieuwe breedte
// $hoogte is nieuwe hoogte
// $imgFILE waar het plaatje van gemaakt wordt, het orgineel dus (bijv $_FILES['image']['tmp_name'])
// $imgDIR waar het plaatje naartoe verhuisd als ie gemaakt is
// $imgNAME nieuwe naam voor plaatje (bijv. mysql_insert_id () )
// $imgEXTENSION jpg of voor thumbs _th.jpg etc.
// $quality getal tussen de 0 en 100 waarbij 100 beste kwaliteit is
$breedte = '1280';
$hoogte = '800';
$imgFILE = 'uploads/'$uploadname;
$imgDIR = 'wxga/';
$imgNAME = $uploadname;
$imgEXTENSION = '.jpg';
$quality = '100';
function create_new_JPGimage ($breedte, $hoogte, $imgFILE, $imgDIR, $imgNAME, $imgEXTENSION, $quality)
{
//temp_photo voor thumbnail maken
$photo = imagecreatefromjpeg ($imgFILE);
//afmetingen bepalen
$source_x = imagesx($photo);
$source_y = imagesy($photo);
$target_x = $breedte;
$target_y = $hoogte;
//als foto te hoog is
if (($source_x/$target_x) < ($source_y/$target_y))
{
//echo "te hoog";
$from_y = ceil(($source_y - ($target_y * $source_x / $target_x))/2);
$from_x = '0';
$source_used_y = ceil(($target_y * $source_x / $target_x));
$source_used_x = $source_x;
}
//als foto te breed is
if (($source_y/$target_y) < ($source_x/$target_x))
{
//echo "te breed";
$from_x = ceil(($source_x - ($target_x * $source_y / $target_y))/2);
$from_y = '0';
$source_used_x = ceil(($target_x * $source_y / $target_y));
$source_used_y = $source_y;
}
//als verhoudingen gelijk zijn
if (($source_x/$target_x) == ($source_y/$target_y))
{
$from_x = '0';
$from_y = '0';
$source_used_x = $source_x;
$source_used_y = $source_y;
}
//nieuwe image maken en wegschrijven naar dir
$create_blank = imagecreatetruecolor ($target_x, $target_y);
imagecopyresampled ($create_blank, $photo, 0, 0, $from_x, $from_y, $target_x, $target_y, $source_used_x, $source_used_y);
$new_filename = $imgDIR.$imgNAME.$imgEXTENSION;
ImageJpeg($create_blank,$new_filename,$quality);
Imagedestroy($photo);
}
create_new_JPGimage ($breedte, $hoogte, $imgFILE, $imgDIR, $imgNAME, $imgEXTENSION, $quality);
?>
1.470 views