ik heb een fotoalbum gemaakt die na het uploaden van je foto's met behulp van GD-library tumbnails maakt en die wegschrijft naar een andere map. Dit heeft gewerkt alleen om een of andere duistere reden werkt het nu niet meer?
de error is:
Fatal error: Call to undefined function: imagecreatefromjpeg() in /home/virtual/site26/fst/var/www/html/cms/admin/foto/thumbnail.php on line 40
naar mijn idee is dit toch gewoon een functie van GD-library?
hier is mijn code:
iemand die mischien een idee heeft?
de error is:
Fatal error: Call to undefined function: imagecreatefromjpeg() in /home/virtual/site26/fst/var/www/html/cms/admin/foto/thumbnail.php on line 40
naar mijn idee is dit toch gewoon een functie van GD-library?
hier is mijn code:
code:
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
| <?
// de var $img_directory moet je veranderen naar het VOLLEDIGE pad waar je afbeeldingen instaan!
// deze moet eindigen met een slash (/) !
$img_directory = "/home/virtual/site26/fst/var/www/html/cms/foto/";
// de var $suffix is de tekst die aan de naam van een afbeelding wordt toegevoegd
// (om aan te duiden dat het een thumbnail is)
$suffix = "_thumb";
// *********** vanaf hier begint het eigenlijke script: ***********
// de bestanden uit de map halen:
chdir($img_directory);
$huidige_dir = getcwd();
$odir = opendir($huidige_dir);
$dir_inhoud = array();
while (($bestand = readdir($odir))!==false) {
$type = filetype($huidige_dir."/".$bestand);
$dir_inhoud[$bestand] = $type;
}
closedir($odir);
natsort($dir_inhoud);
foreach($dir_inhoud as $key => $val) {
if($val == "file") {
// we moeten ALLEEN files hebben natuurlijk!
$bestanden_lijst[] = $key;
}
}
sort($bestanden_lijst);
reset($bestanden_lijst);
$i = 0;
// loop door de aanwezige bestanden:
while(list($key, $val) = each($bestanden_lijst)) {
$extensie = substr($val, -4);
// kijk de extensie na
if (strcasecmp($extensie,".jpg") || strcasecmp($extensie,".gif") || strcasecmp($extensie,".png")) {
if( $extensie == ".jpg" ) {
$src_img = imagecreatefromjpeg($img_directory . $val);
$status = 1;
} elseif( $extensie == ".gif" ) {
// GIF SUPPORT werkt niet met GD >1.6 !!!!
// als je GIF ondersteuning hebt, verwijder dan de slashes (//) van de volgende twee regels ;)
// $src_img = imagecreatefromgif($img_directory . $val);
// $status = 1;
$status = 0;
} elseif( $extensie == ".png" ) {
$src_img = imagecreatefrompng($img_directory . $var);
$status = 1;
} else {
$status = 0;
}
// als status = 0 betekent het dat dit bestand geen png, gif of jpg bestand is!
if($status == 1) {
$imageinfo = getimagesize($img_directory . $val);
// bereken de nieuwe hoogte en breedte
if($imageinfo[0] == $imageinfo[1]) {
$new_w = 150;
$new_h = 150;
} elseif( $imageinfo[0] > $imageinfo[1] ) {
$new_w = 150;
$ratio = $imageinfo[0] / 150;
$new_h = $imageinfo[1] / $ratio;
} elseif( $imageinfo[0] < $imageinfo[1] ) {
$new_h = 150;
$ratio = $imageinfo[1] / 150;
$new_w = $imageinfo[0] / $ratio;
}
// om de correcte kleuren te behouden moeten we imagecreatetruecolor gebruiken!
$nieuwe_thumbnail = imagecreatetruecolor($new_w,$new_h);
// het verkleinen van de tekening gebeurt met imagecopyresampled:
imagecopyresampled($nieuwe_thumbnail, $src_img, 0, 0, 0, 0, $new_w, $new_h, imagesx($src_img), imagesy($src_img));
if(ereg("(.*).(.*)",$val,$arrayke)) {
// de nieuwe naam van de thumbnail:
$thumb_naam = $arrayke[1] . 'g';
$pathstring = $img_directory . 'thumb/' . $thumb_naam;
}
// sla de nieuwe tekening op
imagejpeg($nieuwe_thumbnail, $pathstring, 75);
copy("$img_directory$thumb_naam", $img_directory . 'big/' . $thumb_naam);
unlink("$img_directory$thumb_naam");
echo $val . " is omgezet naar " . $thumb_naam . " ...<br>";
} else {
echo $val . " heeft niet de correct extensie! Dit bestand wordt overgeslagen!<br>";
}
}
}
?> |
iemand die mischien een idee heeft?