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).

mqs 05.09.2002 18:09

Zitat:

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

???Besitzer/Gruppe ???
ich hab rumprobiert, aberich check das noch immer nicht. ich steh echt derart auf der leitung.

was muss ich genau machen.plz help.

sorry versteht das bitte, ich bin beim heer, und seitm heer geht das denken nicht mehr so leicht;)

mqs 06.09.2002 19:28

kann hier bitte nochmal wer auf die sprünge helfen?

Philipp 06.09.2002 19:47

Ist das nur ein Testserver? Dann schalte den Safe Mode einfach aus :)

Ändere in php.ini (bei Linux meistens gleich im /etc Verzeichnis):
Code:

safe_mode = On
auf
Code:

safe_mode = Off

käptn 06.09.2002 20:03

Re: php file upload
 
@Phillip:
Zitat:

Original geschrieben von mqs
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.
@mqs

Ich hab noch nie mit Safe-Mode gearbeitet, aber für Besitzer/gruppen sind die beiden Linux-Befehle chown bzw. chgroup zuständig.

~

mqs 06.09.2002 22:11

hmm danke klingt alles schön, aber der server wo ich die page uploade gehört nicht mir, sondern ich habe mich angemeldet

käptn 07.09.2002 00:14

Hm, ich schätz mal exec() und system() sind auch deaktiviert?

~

[edit]
Durchforste das mal (wenn du's noch nicht hast):

http://www.google.at/search?q=File+upload+safe+mode+php

~

Philipp 07.09.2002 09:40

Zitat:

Original geschrieben von mqs
hmm danke klingt alles schön, aber der server wo ich die page uploade gehört nicht mir, sondern ich habe mich angemeldet
Dann kannst du wenig machen. So wie es aussieht ist der Server nicht richtig konfiguriert. Am besten wende dich an den Betreiber.


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:40 Uhr.

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