WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   php file upload (http://www.wcm.at/forum/showthread.php?t=67487)

mqs 24.08.2002 12:15

php file upload
 
Und zwar hab ich folgendes problem:
ich hab ein upload script für php geschrieben, und es funktioniert auf meinen pc, wo ich einen apache server laufen habe, wo ich alles teste, aber wenn ich nun das ganze uploade auf einen internet server, dann funktionierts nicht mehr.
woran kann das liegen?

ps:
den ordner, wo die daten abgelegt werden, habe ich auf chmod 777 gesetzt

_m3 24.08.2002 12:36

Da wäre nicht schlecht:
1) Genaue Fehlermeldung
2) phpinfo() des Servers
3) Code des Upload-Scripts
4) Pfade auf dem server

mqs 24.08.2002 12:42

Phpinfo kann ich aus folgenden grund nicht ansehen:
Warning: phpinfo() has been disabled for security reasons in /home/usr/nwo/info.php on line 8

Code:
$updir = "archiv"; # Absoluter Pfad zu dem Verzeichniss in den die Daten gespeichert werden
$sizelim = "yes"; # Willst du die größe der datei begrenzen, waehle "yes" sonst "no"
$size = "600000"; # Wie gross darf die Datei maximal sein (in bytes)
$certtype = "no"; # Sollen nur bestimmt Dateitypen erlaubt werden, waehle "yes" sonst "no"
$type = ""; # Was für ein Datentyp darf hochgeladen werden

//error if no file is selected
if ($file_name == "") {
$meldung = "$meldung
Keine Datei gewählt.";
}
//error if file is to big
if ($sizelim == "yes") {
if ($file_size > $size) {
$meldung = "$meldung
Die Datei die du gewählt hast, ist zu groß.";
}
}
//error if file isn't certain type
if ($certtype == "yes") {
if ($type != $file_type) {
$meldung = "$meldung
Die Datei die du gewählt hast ist vom falschen Typ.";
}
}
@copy($file, "$updir/$file_name") or $meldung = "$meldung
Die Datei wurde nicht hochgeladen.";


UND ICH BEKOMME EBEN DIE FEHLERMELDUNG-> Die Datei wurde nicht hochgeladen

_m3 24.08.2002 12:47

Hehe
Dann ruf mal "copy" ohne dem "@" davor auf. Dann wirst Du schon eine aussagekräftige Fehlermeldung bekommen, da:
Zitat:

Alle PHP-Funktionen können auch mit vorangestelltem "@" aufgerufen werden. Das bewirkt das Unterdrücken der Fehlermeldung für die Funktion.
Bei auftretendem Fehler und eingeschalteter track_errors Option wird die entsprechende Fehlermeldung in der globalen Variablen $php_errormsg gespeichert.
P.S.: Ich vermute, dass "updir nicht passt" ;)

mqs 24.08.2002 12:57

wieso sollte updir nicht passen?
bei meinem apache server funzt das aber

MrWolf 24.08.2002 13:01

bist du sicher, dass die möglichkeit des dateiuploads am webserver per php.ini nicht deaktiviert ist (aus sicherheitsgründen). auch möglich, dass php nicht die rechte hat um am angegebenen pfad dateien anlegen zu dürfen.

der tip das vorangestellte @ wegzulassen wird klarheit bringen.

lg

mqs 24.08.2002 13:06

ok ich hab das mal gemacht, und das ist rausgekommen:

Warning: open_basedir restriction in effect. File is in wrong directory in /home/usr/nwo/ppqs/functions.php on line 98

_m3 24.08.2002 23:09

Hehe - wusste ich's doch - das updir is falsch :D

Functions restricted/disabled by safe-mode:
Zitat:

copy()
Checks whether the file(s)/directories you are about to operate on, have the same UID as the script that is being executed. Checks whether the directory in which you are about to operate, has the same UID as the script that is being executed. (on source and target)

mqs 27.08.2002 00:34

das heisst, ich kann die files nicht in einen anderen ordner kopieren?

_m3 27.08.2002 08:42

Das Verzeichnis muss die selben Besitzer/Gruppe haben, wie das File, das das Script beinhaltet (siehe Doku Safe Mode).


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:04 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag