Geen eigenaar op ftp via uploadscript
Hoe kan ik dit veranderen? Ik weet niet zeker of er een eigenaar nodig is maar ik wil in ieder geval dat de foto de CHMOD waarde meekrijgt, op dit moment moet ik namelijk handmatig via de site van mn webhost alle foto's van eigenaar en CHMOD gaan veranderen, anders kunnen mensen ze niet eens zien op de site...
Hierbij het uploadscript:
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
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
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
<?php
// sessiecontrole starten en controleren of hij is gevuld.
session_start();
if(isset($_SESSION['blaat'])){
require('../../databaseconnectie/database.php');
if($_GET['show'] == "add" || $_POST['show'] == "add") {
if($_POST['titel'] && $_POST['msg']) {
global $_FILES;
$filename = $_FILES['userfile']['name'];
$allow[0] = "jpg";
$allow[1] = "gif";
$allow[2] = "png";
$allow[3] = "jpeg";
// $allow[3] = "exe"; enz.
if ($_POST["newname"]) {
$uploadname = $_POST['newname'];
}
else {
$uploadname = $_FILES['userfile']['name'];
}
$extentie = substr($filename, -3);
for ($i = 0; $i < count($allow); $i++) {
if ($extentie == $allow[$i]) {
$extentie_check = "ok";
$i = count($allow) + 5; // om loop te beindigen
}
}
if($extentie_check == "ok") {
$naam = $_POST['titel'] . ".";
$naam2 = "$naam$extentie";
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
move_uploaded_file($_FILES['userfile']['tmp_name'], "pictures/" . $naam2);
chmod ( "pictures/" . $naam2 , 644 );
$msg = nl2br($_POST['msg']);
$sql = "INSERT INTO images (ima_id, ima_titel, ima_image, ima_comment) VALUES ('',
'" . $_POST['titel'] . "',
'" . $naam2 ."',
'" . $msg ."')";
$res = mysql_query($sql);
if ($res) {
header("Location: ../index.php?show=7&media=1&err=1");
}
else {
header("Location: ../index.php?show=7&media=1&err=2");
}
}
} else {
//verkeerde extensie
header("Location: ../index.php?show=7&media=1&err=3");
}
} else {
// niet alles ingevuld
header("Location: ../index.php?show=7&media=1&err=4");
}
} else {
//niet via formulier ingekomen
}
//sessie afsluiten
}else{
header("Location: ../inloggen/inlogscherm.php");
}
?>
// sessiecontrole starten en controleren of hij is gevuld.
session_start();
if(isset($_SESSION['blaat'])){
require('../../databaseconnectie/database.php');
if($_GET['show'] == "add" || $_POST['show'] == "add") {
if($_POST['titel'] && $_POST['msg']) {
global $_FILES;
$filename = $_FILES['userfile']['name'];
$allow[0] = "jpg";
$allow[1] = "gif";
$allow[2] = "png";
$allow[3] = "jpeg";
// $allow[3] = "exe"; enz.
if ($_POST["newname"]) {
$uploadname = $_POST['newname'];
}
else {
$uploadname = $_FILES['userfile']['name'];
}
$extentie = substr($filename, -3);
for ($i = 0; $i < count($allow); $i++) {
if ($extentie == $allow[$i]) {
$extentie_check = "ok";
$i = count($allow) + 5; // om loop te beindigen
}
}
if($extentie_check == "ok") {
$naam = $_POST['titel'] . ".";
$naam2 = "$naam$extentie";
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
move_uploaded_file($_FILES['userfile']['tmp_name'], "pictures/" . $naam2);
chmod ( "pictures/" . $naam2 , 644 );
$msg = nl2br($_POST['msg']);
$sql = "INSERT INTO images (ima_id, ima_titel, ima_image, ima_comment) VALUES ('',
'" . $_POST['titel'] . "',
'" . $naam2 ."',
'" . $msg ."')";
$res = mysql_query($sql);
if ($res) {
header("Location: ../index.php?show=7&media=1&err=1");
}
else {
header("Location: ../index.php?show=7&media=1&err=2");
}
}
} else {
//verkeerde extensie
header("Location: ../index.php?show=7&media=1&err=3");
}
} else {
// niet alles ingevuld
header("Location: ../index.php?show=7&media=1&err=4");
}
} else {
//niet via formulier ingekomen
}
//sessie afsluiten
}else{
header("Location: ../inloggen/inlogscherm.php");
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Frank
Heb ook ooit eens zoiets meegemaakt. Kwam omdat het een gratis host was, dan kan je zo'n dingen wel meemaken.
Ik heb geen gratis host... maar is er dan echt niets dat ik hieraan kan doen? Lijkt me sterk toch?
Dus als dat niet werkt dan zijn de rechten van de map zelf waarschijnlijk niet goed ingesteld.
Edit: En een bestand heeft áltijd een eigenaar.
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
Ja dat dacht ik eerst ook, daarom heb ik de map op CHMOD 777 gezet, niet echt veilig volgens mij, maar ik moest wat om het script te testen...daarom snap ik er ook niets van :S
En heb je gecontroleerd of dat nu ook echt op 777 staat?
EDIT:
ook bovenstaande mappen veranderd naar 777 maar nog steeds blijft het probleem. De webserver blijft de eigenaar van het bestand en de CHMOD blijft automatisch op 204 staan.
Gewijzigd op 01/01/1970 01:00:00 door Frank
Frank schreef op 25.05.2008 14:18:
ja, ook gecontroleerd, maar ik zie nu wel dat de bovenstaande map (waar de map images dus in zit) op 755 stond...
Moet genoeg zijn.
Als je een bestand upload wat zijn dan de rechten en wie zijn owner en group?
Gewijzigd op 01/01/1970 01:00:00 door Frank
En 'nobody' is wel degelijk een officiële owner en/of group.
Bedank SanThe, ik heb het gevraagd en ze gaan het nakijken voor me. Maar hoezo is nobody een officiele owner/group dan?
Die user kan niet inloggen en heeft de minste rechten.