Resize script toevoegen aan upload script
ik ben bezig met de site: verplaatsingoudestationhouten.nl
en nu heb ik daarin verwerkt een script waarmee mensen
hun foto's kunnen uploaden, dit gebeurt in flash maar word uiteraard
aangestuurd dmv php.
Alleen ik zit met 1 probleem.
De foto's worden op hun orginele formaat op de server opgeslagen en dat is wat groot bij goede foto's en omdat de site toch maar foto's van max 150 breed gaat laten zien wil ik ze automatisch laten verkleinen.
Nu heb ik deze code wat de foto's upload en verplaatst:
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
//create the directory if doesn't exists (should have write permissons)
if(!is_dir("./files")) mkdir("./files", 0755);
//move the uploaded file
move_uploaded_file($_FILES['Filedata']['tmp_name'], "./files/".$_FILES['Filedata']['name']);
chmod("./files/".$_FILES['Filedata']['name'], 0777);
?>
//create the directory if doesn't exists (should have write permissons)
if(!is_dir("./files")) mkdir("./files", 0755);
//move the uploaded file
move_uploaded_file($_FILES['Filedata']['tmp_name'], "./files/".$_FILES['Filedata']['name']);
chmod("./files/".$_FILES['Filedata']['name'], 0777);
?>
en wil het resize script erbij hebben maar wat ik van php.net af heb gehaald krijg ik maar niet toegepast :S ik dacht dat ik redelijk wat van php afwist maar ik snap niet wat ik fout doe, ik wil al me pogingen wel posten maar ik denk niet dat we daar mee opschieten, kan iemand me misschien even helpen met het toepassen van dit scriptje van php.net:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
// The file
$filename = 'test.jpg';
// Set a maximum height and width
$width = 200;
$height = 200;
// Content type
header('Content-type: image/jpeg');
// Get new dimensions
list($width_orig, $height_orig) = getimagesize($filename);
$ratio_orig = $width_orig/$height_orig;
if ($width/$height > $ratio_orig) {
$width = $height*$ratio_orig;
} else {
$height = $width/$ratio_orig;
}
// Resample
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
// Output
imagejpeg($image_p, null, 100);
?>
// The file
$filename = 'test.jpg';
// Set a maximum height and width
$width = 200;
$height = 200;
// Content type
header('Content-type: image/jpeg');
// Get new dimensions
list($width_orig, $height_orig) = getimagesize($filename);
$ratio_orig = $width_orig/$height_orig;
if ($width/$height > $ratio_orig) {
$width = $height*$ratio_orig;
} else {
$height = $width/$ratio_orig;
}
// Resample
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
// Output
imagejpeg($image_p, null, 100);
?>
Alvast bedankt!
Gewijzigd op 01/01/1970 01:00:00 door Mark
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
//bepaal variabelen image
list($hWidth, $hHeight) = GetImageSize($tName);
//Begin resize grote image..
$hWidth > $hHeight ? $nBigWidth = 800 : $nBigWidth = 600;
$tmp = $hWidth / $nBigWidth;
$nBigHeight = $hHeight / $tmp;
$src_img = imagecreatefromjpeg($tName);
$dst_img = imagecreatetruecolor($nBigWidth,$nBigHeight);
imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $nBigWidth, $nBigHeight, $hWidth, $hHeight);
if(!imagejpeg($dst_img, $dUpload.$fNameBig, 75)) { $status = 0; }
imagedestroy($src_img); imagedestroy($dst_img);
//Einde resize grote image..
?>
//bepaal variabelen image
list($hWidth, $hHeight) = GetImageSize($tName);
//Begin resize grote image..
$hWidth > $hHeight ? $nBigWidth = 800 : $nBigWidth = 600;
$tmp = $hWidth / $nBigWidth;
$nBigHeight = $hHeight / $tmp;
$src_img = imagecreatefromjpeg($tName);
$dst_img = imagecreatetruecolor($nBigWidth,$nBigHeight);
imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $nBigWidth, $nBigHeight, $hWidth, $hHeight);
if(!imagejpeg($dst_img, $dUpload.$fNameBig, 75)) { $status = 0; }
imagedestroy($src_img); imagedestroy($dst_img);
//Einde resize grote image..
?>
Afgekeken van het foto album script van Bas, ergens in de script libary..