upload script werkt niet.
Form.php:
Code (php)
1
2
3
4
5
2
3
4
5
<? print ("<form method=post action='submit.php' enctype=multipart/form-data>
Bestand: <input type=\"file\" name=\"bestand\"><br><br>
<input type='hidden' name='Uploaden' value='true'/>
<input type='submit' name='Submit' value='Submit'></form>");
?>
Bestand: <input type=\"file\" name=\"bestand\"><br><br>
<input type='hidden' name='Uploaden' value='true'/>
<input type='submit' name='Submit' value='Submit'></form>");
?>
Form.php staat in /test, evenals submit.php
Het upload script, van Ron
http://www.phphulp.nl/php/scripts/2/96/
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
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
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
<?PHP
// In welke map komen de bestanden ? ( zorg dat deze de permissies 777 krijgt )
$map = "/database/";
// Wat is de maximale groote van het bestand in bytes ( 1 kb = 1000 bytes )
$max = "1000000";
// Welke extensies kunnen er worden geupload ( als alles mag dan niks invullen )
$ext = "jpg JPG";
// Hieronder niks aanpassen
// Controleren
if ($_POST['Uploaden'])
{
if (!$_FILES['bestand'])
print ("Geef een bestand op!");
else
{
// Bestands naam opvragen
$bestand2 = explode("\\", $_FILES['bestand']['name']);
$laatste = count($bestand2) - 1;
$bestand2 = "$bestand2[$laatste]";
// Extensie van bestand opvragen
$bestand3 = explode(".", $bestand2);
$laatste = count($bestand3) - 1;
$bestand3 = "$bestand3[$laatste]";
$bestand3 = strtolower($bestand3);
// Toegestaande extensies opvragen
$ext = strtolower($ext);
$ext = explode(" ", $ext);
$aantal = count($ext);
for ($tel = 0;$tel < $aantal; $tel++)
{
if ($bestand3 == $ext[$tel])
{
$extfout = "nee";
}
}
if (!$extfout)
{
print ("Het bestand \"$bestand2\" kan niet worden geupload omdat de extensie niet is toegestaan!");
}
else
{
if ($_FILES['bestand']['size'] > $max)
print ("Het bestand \"$bestand2\" is groter dan $max bytes!");
else
{
// Opslaan van het bestand
move_uploaded_file($_FILES['bestand'], "$map$bestand2");
print ("Het bestand \"$bestand2\" is met succes geupload!");
}
}
}
}
?>
// In welke map komen de bestanden ? ( zorg dat deze de permissies 777 krijgt )
$map = "/database/";
// Wat is de maximale groote van het bestand in bytes ( 1 kb = 1000 bytes )
$max = "1000000";
// Welke extensies kunnen er worden geupload ( als alles mag dan niks invullen )
$ext = "jpg JPG";
// Hieronder niks aanpassen
// Controleren
if ($_POST['Uploaden'])
{
if (!$_FILES['bestand'])
print ("Geef een bestand op!");
else
{
// Bestands naam opvragen
$bestand2 = explode("\\", $_FILES['bestand']['name']);
$laatste = count($bestand2) - 1;
$bestand2 = "$bestand2[$laatste]";
// Extensie van bestand opvragen
$bestand3 = explode(".", $bestand2);
$laatste = count($bestand3) - 1;
$bestand3 = "$bestand3[$laatste]";
$bestand3 = strtolower($bestand3);
// Toegestaande extensies opvragen
$ext = strtolower($ext);
$ext = explode(" ", $ext);
$aantal = count($ext);
for ($tel = 0;$tel < $aantal; $tel++)
{
if ($bestand3 == $ext[$tel])
{
$extfout = "nee";
}
}
if (!$extfout)
{
print ("Het bestand \"$bestand2\" kan niet worden geupload omdat de extensie niet is toegestaan!");
}
else
{
if ($_FILES['bestand']['size'] > $max)
print ("Het bestand \"$bestand2\" is groter dan $max bytes!");
else
{
// Opslaan van het bestand
move_uploaded_file($_FILES['bestand'], "$map$bestand2");
print ("Het bestand \"$bestand2\" is met succes geupload!");
}
}
}
}
?>
Als de foto te groot is of een ander bestandsformaat is, dan geeft ie keurig de goede melding. De melding die ik steeds krijg indien aan bestandsgrootte en bestandstype is voldaan is dat het bestand succesvol is geupload. Echter de image blijkt helemaal niet geupload te zijn. Ook al heb ik de map alle rechten gegeven CHRMOD 777. Wat doe ik fout?
Alvast bedankt!
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?php
if(move_uploaded_file($_FILES['bestand'], "$map$bestand2"))
{
print ("Het bestand \"$bestand2\" is met succes geupload!");
}
else
{
echo 'Het is mislukt';
}
?>
if(move_uploaded_file($_FILES['bestand'], "$map$bestand2"))
{
print ("Het bestand \"$bestand2\" is met succes geupload!");
}
else
{
echo 'Het is mislukt';
}
?>
ps. Zet ook eens
bovenaan je script. Hoogstwaarschijnlijk had je dan wel een melding gekregen.
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
Warning: move_uploaded_file(): SAFE MODE Restriction in effect. The script whose uid is 10203 is not allowed to access / owned by uid 0 in /home/httpd/vhosts/websitenaam.nl/httpdocs/test/submit.php on line 210
?
ik gebruik het zelf.
Ik ben er heel tevregen over...
http://www.phphulp.nl/php/scripts/2/96/
Mvg Jens :)
Dank Jens, t werkt perfect!!! :D