foto uploader met max afmetingen (30 op 30)
jo colling
18/02/2009 20:04:00Ik wil een foto uploader die aleen gif-afbeeldingen aankan en de afmetingen moeten 30px op 30px, klein dus
Gewijzigd op 01/01/1970 01:00:00 door Jo colling
PHP hulp
29/11/2024 22:35:59Joey Drieling
18/02/2009 20:26:00Controleer groote, te groot geef dan een error anders plaatje opslaan.
groote kan je krijge met:
groote kan je krijge met:
Gewijzigd op 01/01/1970 01:00:00 door Joey Drieling
Jesper Diovo
18/02/2009 20:39:00@Joey: getimagesize() geeft een array terug. Die kun je niet echo'en. Een array weergeven doe je zo:
Pieter Jansen
18/02/2009 20:44:00Heb toevallig net een fotoupload script gemaakt. Maar ik ga hier uit van alleen de breedte die max 500 is. Zodat de hoogte relatief is ( uitgaande van het aspect ratio van de foto)>.
Als je wil, kan ik het posten.
Als je wil, kan ik het posten.
jo colling
18/02/2009 20:46:00Pieter Jansen
18/02/2009 21:17:00Code (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
function createThumbnail($filename) {
//file naam is logisch.. naam van je $)FILES['POSTNAAM']['naam'];
$resultaat_breedte = 30; //uiteindelijke breedte (30 dus)
$pad123 = // naam van waar het moet komen bijv "../image/"
if( preg_match('/[.](gif)$/', $bestandsnaam)) {
$im = imagecreatefromgif($pad123 . $bestandsnaam);}
// ox = original X
// oy = original Y
$ox = imagesx($im);
$oy = imagesy($im);
// nx = nieuwe X
// ny = nieuwe Y
$nx = $resultaat_breedte;
$ny = floor($oy * ($resultaat_breedte / $ox));
$nm = imagecreatetruecolor($nx, $ny);
imagecopyresampled($nm, $im, 0,0,0,0,$nx,$ny,$ox,$oy);
imagejpeg($nm, $pad123 . "t_" . $bestandsnaam);
imagedestroy($nm);
// let wel dat dit alleen de functie is, dus de validatie moet hiervoor gebeuren. Maar dat is aan jou denk ik dan maar ;)
?>
function createThumbnail($filename) {
//file naam is logisch.. naam van je $)FILES['POSTNAAM']['naam'];
$resultaat_breedte = 30; //uiteindelijke breedte (30 dus)
$pad123 = // naam van waar het moet komen bijv "../image/"
if( preg_match('/[.](gif)$/', $bestandsnaam)) {
$im = imagecreatefromgif($pad123 . $bestandsnaam);}
// ox = original X
// oy = original Y
$ox = imagesx($im);
$oy = imagesy($im);
// nx = nieuwe X
// ny = nieuwe Y
$nx = $resultaat_breedte;
$ny = floor($oy * ($resultaat_breedte / $ox));
$nm = imagecreatetruecolor($nx, $ny);
imagecopyresampled($nm, $im, 0,0,0,0,$nx,$ny,$ox,$oy);
imagejpeg($nm, $pad123 . "t_" . $bestandsnaam);
imagedestroy($nm);
// let wel dat dit alleen de functie is, dus de validatie moet hiervoor gebeuren. Maar dat is aan jou denk ik dan maar ;)
?>