Ik heb een script gemaakt die foto's kan uploaden en verwijderen. Dit script werkt perfect op mijn PC (Windows 2000 met Apache en PHP 5.0.3). Maar zodra ik het upload naar de server (FreeBSD met Apache en PHP 4.3.11) en ik verwijder iets en ik upload het weer, gaat hij andere bestanden overschrijven en hutselt ie alles door elkaar 
Deze code gebruik ik om te uploaden
in samenwerking met dit PHP script (resized ook de plaatjes).
Met deze code laat ik de plaatjes zien,
waarna ik ze met deze code verwijder.
Ik ben het spoor in ieder geval bijster
Iemand enig idee waardoor dit zou kunnen

Deze code gebruik ik om te uploaden
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
| <form enctype="multipart/form-data" name="portfolio" method="post" action="upload.php"> <table cellpadding="0" cellspacing="0" width="100%"> <tr> <td style="font-size:12px;">Afbeelding:</td> </tr> <tr> <td><input type="file" name="img" class="textinput" size="40"></td> </tr> <tr> <td style="font-size : 12px;"><br><input type="hidden" name="p" value="<?php echo $_REQUEST['p']; ?>"><input type="submit" value="Uploaden" class="button" style="font-size:11px;font-family:Tahoma;font-weight:bold;"> <input type="reset" value="Reset" class="button" style="font-size:11px;font-family:Tahoma;font-weight:bold;"></td> </tr> </table> </form> |
in samenwerking met dit PHP script (resized ook de plaatjes).
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
| <? if ($handle = opendir('../gfx/fotos/')) { while (false !== ($file = readdir($handle))) { if (eregi("(^$_POST[p]_)([0-9]{1,3})(.jpg$)",$file,$regs)) { if (eregi(".*\.jpg$", $file) OR eregi(".*\.jpeg$", $file)) { } } } $nummer = $regs[2]+1; closedir($handle); } if (!isset($_POST['p'])) { $_POST['p'] = "0"; } if (!isset($HTTP_POST_FILES['img']['name'])) { $HTTP_POST_FILES['img']['name'] = "0"; } if (!isset($HTTP_POST_FILES['img']['type'])) { $HTTP_POST_FILES['img']['type'] = "0"; } $thumb_naam = $_POST['p']."_thumb_".$nummer.".jpg"; $naam = $_POST['p']."_".$nummer.".jpg"; $img = $HTTP_POST_FILES['img']['name']; $type = $HTTP_POST_FILES['img']['type']; if ($type == "image/pjpeg" OR $type == "image/jpeg") { $image = imagecreatefromjpeg($HTTP_POST_FILES['img']['tmp_name']); $breedte = imagesx($image); $hoogte = imagesy($image); $create_thumb = imagecreatetruecolor(100, 100); imagecopyresampled($create_thumb,$image,0,0,0,0,100,100,$breedte,$hoogte); ImageJpeg($create_thumb,"../gfx/fotos/$thumb_naam",90); if (!@move_uploaded_file($HTTP_POST_FILES['img']['tmp_name'],'../gfx/fotos/'.$naam)) { echo "Er is iets misgegaan."; } else { echo "Uploaden geslaagd."; } } else { $image = "0"; echo "U heeft geen JPEG-bestand opgegeven."; } ?> |
Met deze code laat ik de plaatjes zien,
PHP:
1
2
3
4
5
6
7
8
9
10
11
| <?php $handle = opendir('../gfx/fotos/'); while (false != ($file = readdir($handle))) { if (eregi("^".$_REQUEST['p']."_thumb_",$file)) { $output = "<a href=\"verwijder.php?file=".$file."\" target=\"_self\">[img]\"../gfx/fotos/".$file."\"[/img]</a> "; $output = str_replace("href=\"gfx/fotos/".$_REQUEST['p']."_thumb_", "href=\"gfx/fotos/".$_REQUEST['p']."_", $output); echo $output; } } closedir($handle); ?> |
waarna ik ze met deze code verwijder.
PHP:
1
2
3
4
5
6
7
8
9
| <?php } elseif ($_REQUEST['c']=="ja") { unlink("../gfx/fotos/".$_REQUEST['file']); $file = str_replace("thumb_", "", $_REQUEST['file']); unlink("../gfx/fotos/".$file); echo "Afbeelding verwijderd."; } ?> |
Ik ben het spoor in ieder geval bijster