Hallo,
Ik gebruik het volgende foto upload-script (http://www.phpfreakz.nl/library.php?sid=20269). Het werkt goed, alleen hebben de geüploade bestanden te lage permissies zodat ik ze niet terug kan verwijderen. Dit geldt voor zowel verwijderen via PHP en FTP. De permissies zijn 600 (voor gewone foto) of 644 (voor thumnail).
Hoe kan ik onderstaande code aanpassen zodat ik ze nadien terug kan verwijderen?
Alvast bedankt!
De bovenste functie wordt eerst aangeroepen.
Ik gebruik het volgende foto upload-script (http://www.phpfreakz.nl/library.php?sid=20269). Het werkt goed, alleen hebben de geüploade bestanden te lage permissies zodat ik ze niet terug kan verwijderen. Dit geldt voor zowel verwijderen via PHP en FTP. De permissies zijn 600 (voor gewone foto) of 644 (voor thumnail).
Hoe kan ik onderstaande code aanpassen zodat ik ze nadien terug kan verwijderen?
Alvast bedankt!
De bovenste functie wordt eerst aangeroepen.
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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
| function upload_multiply($veldnaam,$map) {
for($i = 0; $i < count($_FILES[$veldnaam]['name']);$i++) {
if($_FILES[$veldnaam]['name'][$i] != ''){
$this->upload($_FILES[$veldnaam]['name'][$i],$_FILES[$veldnaam]['tmp_name'][$i],$_FILES[$veldnaam]['type'][$i],$map);
}
}
}
function upload($naam,$tmp_name,$type,$map) {
$extensie = $this->extension_check($naam);
if($extensie === FALSE) {
$this->foutmelding .= 'Geen geldige extensie voor bestand: '.$naam.'.<br />';
return FALSE;
}
$upload = $this->upload_file($naam,$tmp_name,$type,$map);
if($upload === TRUE) {
if(($extensie == 'jpg' or $extensie == 'jpeg' or $extensie == 'gif' or $extensie == 'png') && ($type == 'image/gif' or $type == 'image/jpg' or $type == 'image/jpeg' or $type == 'image/pjpeg' or $type == 'image/png')) {
if($this->standaard_thumbnailen) {
$this->thumbnail($map.$naam,$this->thumb_map.$naam);
}
if($this->standaard_watermerken) {
$this->watermerk($map.$naam);
}
}
}
}
function upload_file($naam,$tmp_name,$typ,$map) {
if(!is_uploaded_file($tmp_name)) {
$this->foutmelding .= $naam.' is niet goed geüpload.<br />';
return FALSE;
}
$up = move_uploaded_file($tmp_name,$map.$naam);
if(!$up) {
$this->foutmelding .= 'Fout bij uploaden van bestand: '.$naam.'.<br />';
return FALSE;
}
return TRUE;
}
function watermerk($image) {
$watermerk = imagecreatefrompng($this->path_to_watermerk);
$breedte_watermerk = imagesx($watermerk);
$hoogte_watermerk = imagesy($watermerk);
imagecreatetruecolor($breedte_watermerk,$hoogte_watermerk);
//de echte afbeelding
$extensie_afbeelding = $this->extensie($image);
if($extensie_afbeelding == 'jpg' or $extensie_afbeelding == 'jpeg') {
$afbeelding = @imagecreatefromjpeg($image);
} elseif ($extensie_afbeelding == 'gif') {
$afbeelding = @imagecreatefromgif($image);
} elseif ($extensie_afbeelding == 'png') {
$afbeelding = @imagecreatefrompng($image);
} else {
$this->foutmelding .= 'De afbeelding heeft geen geldige extensie.<br />';
return FALSE;
}
$grootte_afbeelding = getimagesize($image);
$xas = $grootte_afbeelding[0] - $breedte_watermerk - 5;
$yas = $grootte_afbeelding[1] - $hoogte_watermerk - 5;
imagecopymerge($afbeelding,$watermerk,$xas,$yas,0,0,$breedte_watermerk,$hoogte_watermerk,100);
if($extensie_afbeelding == 'jpg' or $extensie_afbeelding == 'jpeg') {
$new_image = @imagejpeg($afbeelding,$image,75);
} elseif ($extensie_afbeelding == 'gif') {
$new_image = @imagegif($afbeelding,$image);
} elseif ($extensie_afbeelding == 'png') {
$new_image = @imagepng($afbeelding,$image);
} else {
$this->foutmelding .= 'De afbeelding heeft geen geldige extensie.<br />';
return FALSE;
}
if($new_image) {
return $new_image;
} else {
$this->foutmelding .= 'Kon de nieuwe afbeelding niet kopiëren.<br />';
return FALSE;
}
imagedestroy($afbeelding);
imagedestroy($watermerk);
}
function thumbnail ($image,$new_name) {
$width = $this->thumb_width;
$height = $this->thumb_height;
$extensie = $this->extensie($image);
if($extensie == 'gif') {
$afbeelding = @imagecreatefromgif($image);
} elseif($extensie == 'jpg' OR $extensie == 'jpeg') {
$afbeelding = @imagecreatefromjpeg($image);
} elseif($extensie == 'png') {
$afbeelding = @imagecreatefrompng($image);
} else {
$this->foutmelding .= 'Geen geldige extensie. <br />';
return FALSE;
}
if(!$afbeelding) {
$this->foutmelding .= 'Kon de afbeelding niet initialiseren. <br />';
return FALSE;
}
$breedte = imagesx($afbeelding);
$hoogte = imagesy($afbeelding);
if ($breedte / $hoogte > $width / $height) {
$new_width = $width;
$new_height = round ($hoogte/($breedte/$width));
} else {
$new_height = $height;
$new_width= round ($breedte/($hoogte/$height));
}
$hoogte = imagesy($afbeelding);
$breedte = imagesx($afbeelding);
if(($breedte/$width) > ($hoogte/$height)) {
$ratio_x = ($breedte/$width);
$ratio_y = $ratio_x;
} else {
$ratio_y = ( $hoogte / $height );
$ratio_x = $ratio_y;
}
$new_height = round($hoogte/$ratio_y);
$new_width = round($breedte/$ratio_x);
if($extensie = 'jpg' or $extensie = 'jpeg' or $extensie = 'png'){
$im = @ImageCreateTrueColor( $new_width, $new_height );
} elseif($extensie = 'gif') {
$im = @ImageCreate( $new_width, $new_height );
}
if(!$im) {
$this->foutmelding = 'Kan de GD afbeelding niet initialiseren.<br />';
return FALSE;
}
ImageCopyResampled( $im, $afbeelding, 0, 0, 0, 0, $new_width, $new_height, $breedte, $hoogte );
if($extensie = 'jpg' or $extensie = 'jpeg') {
$new_image = @imagejpeg($im , $new_name , 75);
} elseif($extensie = 'png') {
$new_image = @imagepng($im , $new_name);
} elseif($extensie = 'gif') {
$new_image = @imagegif($im , $new_name);
}
imagedestroy($im);
if($new_image) {
return $new_image;
} else {
$this->foutmelding .= 'Kon de nieuwe afbeelding niet kopiëren.<br />';
return FALSE;
}
} |