php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 29.09.2009, 18:40  
Neuer Benutzer
 
Registriert seit: 09.09.2009
Beiträge: 8
PHP-Kenntnisse:
Fortgeschritten
DarkChris befindet sich auf einem aufstrebenden Ast
DarkChris eine Nachricht über ICQ schicken DarkChris eine Nachricht über AIM schicken
Standard Problem mit Dateiupload bei eigenem Webserver

Liebe Community,

Zur Zeit programmiere ich gerade einen komplett eigenen Webserver den ich bereits ziemlich erfolgreich mit PHP und MySQL verbunden hab... Nun ist er kurz vor der Veröffentlichung, aber leider unterstützt er Dateiuploads noch nicht richtig...

Man kann die Dateien zwar hochladen, in $_FILES[] landen die Dateien auch korrekt, aber move_uploaded_file() gibt immer ein false zurück, was darauf hindeutet, dass PHP mit dem Temp-Directory nicht wirklich klar kommt.

Ich habe schon versucht die Dateien nach C:\WINDOWS\Temp\ zu laden, aber auch da habe ich keine Chance... Ich vermute mal der Fehler liegt an meiner PHP.ini

Hier ein Ausschnitt der PHP.ini
Code:
; Whether to allow HTTP file uploads.
file_uploads = On

; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
upload_tmp_dir = "\WINDOWS\Temp"

; Maximum allowed size for uploaded files.
upload_max_filesize = 2M
Bei upload_tmp_dir habe ich schon ziemlich viel probiert und irgendwie ging bisher gar nichts.

Könnte es vielleicht sein, dass ich noch eine $_SERVER-Variable oder eine andere Variable irgendwie noch setzen muss?

Ich hoffe ihr könnt mir helfen.

Vielen Dank.

Mit freundlichen Grüßen,
Christopher Serr
DarkChris ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 29.09.2009, 19:29  
Neuer Benutzer
 
Registriert seit: 29.09.2009
Beiträge: 7
PHP-Kenntnisse:
Fortgeschritten
elecs befindet sich auf einem aufstrebenden Ast
Standard

Hi,

ich weis nicht ob ich jetzt falsch liege aber müsste es nicht

upload_tmp_dir = "c:\WINDOWS\Temp" sein wenn das Verzeichnis auf C: liegt,

statt

upload_tmp_dir = "\WINDOWS\Temp"

Gruß
elecs ist offline   Mit Zitat antworten
Alt 29.09.2009, 19:41  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Findes es sehr eigenartig, dass Du uns hier diese Fragen stellst, wo Du das Verhalten des Servers doch programmierst.

Wie auch immer, in meiner ini steht bspw.
Zitat:
; Temporary directory for HTTP uploaded files (will use system default if not
; specified
).
upload_tmp_dir = "D:\System\Programme_portable\xampp\tmp"
also ein vollständiger Pfad. Beachte auch die Markierung.
Meine Systemvariable (Commandline set) auch absolut.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 29.09.2009, 19:55  
Neuer Benutzer
 
Registriert seit: 09.09.2009
Beiträge: 8
PHP-Kenntnisse:
Fortgeschritten
DarkChris befindet sich auf einem aufstrebenden Ast
DarkChris eine Nachricht über ICQ schicken DarkChris eine Nachricht über AIM schicken
Standard

Ich programmier den Server, aber zu PHP bau ich nur die Schnittstelle auf... Mein Server muss nur die Daten richtig an PHP liefern und die von PHP zurückgelieferten Daten richtig interpretieren.... Mit PHP selber kenn ich mich nicht allzu gut aus, daher muss ich euch hier fragen...

"C:\WINDOWS\Temp" hab ich auch schon probiert, aber hat auch nicht funktioniert... Bei XAMPP welches ich zu gegebenem Anlass heruntergeladen hab, wurde meine oben genannte Variante ("\WINDOWS\Temp") verwendet...

Das System-Default ist das gleiche wie "C:\WINDOWS\Temp", aber wie das Schicksal es so will, ging auch dies nicht...

Die Daten in $_FILES[] stimmen auch zu 100% mit XAMPP überein...

Hier noch der $_FILES[]-Array
Code:
Array
(
    [file] => Array
        (
            [name] => meinavatar.png
            [error] => 
            [type] => image/png
            [size] => 8767
            [tmp_name] => C:\WINDOWS\Temp\php8.tmp
        )
)
Und hier noch die betroffene Stelle im PHP-Code
PHP-Code:
if (!move_uploaded_file($_FILES["file"]["tmp_name"], "upload\\" $_FILES["file"]["name"]))
{
    echo 
"Fehler";

Und es wird immer "Fehler" angezeigt - Auf XAMPP mit den gleichen Skript jedoch nicht...

Ich hoffe euch fällt noch was anderes ein ^^

Vielen Dank.

Mit freundlichen Grüßen,
Christopher Serr

Geändert von DarkChris (29.09.2009 um 20:19 Uhr).
DarkChris ist offline   Mit Zitat antworten
Alt 29.09.2009, 21:15  
Neuer Benutzer
 
Registriert seit: 29.09.2009
Beiträge: 7
PHP-Kenntnisse:
Fortgeschritten
elecs befindet sich auf einem aufstrebenden Ast
Standard

Hi,

ma ne frage was sol das hier sein "upload\\" bzw die 2 backslashes?
elecs ist offline   Mit Zitat antworten
Alt 29.09.2009, 21:17  
Neuer Benutzer
 
Registriert seit: 09.09.2009
Beiträge: 8
PHP-Kenntnisse:
Fortgeschritten
DarkChris befindet sich auf einem aufstrebenden Ast
DarkChris eine Nachricht über ICQ schicken DarkChris eine Nachricht über AIM schicken
Standard

Ein Backslash bedeutet in einem String, dass danach eine Art "Anweisung" kommt... "\n" bedeutet zum Beispiel "Neue Zeile". Um somit ein normales Backslash hinzubekommen macht man einfach "\\".

Mit freundlichen Grüßen,
Christopher Serr
DarkChris ist offline   Mit Zitat antworten
Alt 29.09.2009, 21:34  
Neuer Benutzer
 
Registriert seit: 29.09.2009
Beiträge: 7
PHP-Kenntnisse:
Fortgeschritten
elecs befindet sich auf einem aufstrebenden Ast
Standard

Das ist schon klar, aber vieleicht liegt ja da der Fehler

zB. geb ich so meine Pfade an


PHP-Code:
if($success CopyDirectory($source$_POST["Kunde"] ."/".$_POST['name'])) 
guck es dir einfachmal an.

Ich denke das du dir mit den slashes den pfad kaput machst.

Gruß
elecs ist offline   Mit Zitat antworten
Alt 29.09.2009, 21:49  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Unter Windows kann php IMHO beide Variante. Nen Versuch wärs trotzdem wert.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 29.09.2009, 23:21  
Neuer Benutzer
 
Registriert seit: 09.09.2009
Beiträge: 8
PHP-Kenntnisse:
Fortgeschritten
DarkChris befindet sich auf einem aufstrebenden Ast
DarkChris eine Nachricht über ICQ schicken DarkChris eine Nachricht über AIM schicken
Standard

Ne ging auch nicht... Mist... Ihr müsst aber auch bedenken, dass es bei XAMPP ja so oder so ging... Mit dem gleichen Skript... Es liegt dann wohl eher am Rest... Aber der $_FILES[]-Array is ja auch richtig aufgebaut... Eigentl. könnte es somit nur an der php.ini oder einer fehlenden, aber benötigten $_SERVER[]-Variable / sonstigen Variable liegen...
DarkChris ist offline   Mit Zitat antworten
Alt 30.09.2009, 01:19  
Benutzer
 
Registriert seit: 10.07.2009
Beiträge: 54
PHP-Kenntnisse:
Fortgeschritten
Peterle befindet sich auf einem aufstrebenden Ast
Standard

Hi,

tu mal zum Test move_uploaded_file raus aus der if-Anweisung, aktiviere error_reporting auf E_ALL und für das Script nochmal aus. Dann wirst du evtl. eine Fehlermeldung erhalten und die postest du mal hier rein.
Peterle ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Timestamp problem phrain PHP Tipps 2008 2 04.04.2008 09:41
datensätze defekt oder problem mit dem einlesen? Ministry Datenbanken 4 06.07.2006 18:42
problem!!! PHP Tipps 2006 6 08.02.2006 11:06
[Erledigt] wieder ein Problem bei phpmailer und smtp PHP Tipps 2006 24 07.02.2006 01:07
Problem mit Dateiupload auf Mac bexxta PHP Tipps 2005-2 2 06.09.2005 23:27
[Erledigt] Vermutlich ein php.ini Problem PHP-Fortgeschrittene 16 07.08.2005 20:23
[Erledigt] Problem mit Backslash Patrick Schwarz PHP Tipps 2005-2 5 26.07.2005 09:54
[Erledigt] Problem mit User/Group: nobody(99)/99 Server, Hosting und Workstations 3 09.07.2005 15:31
PHP 5 und IIS 5 problem! silverghost PHP-Fortgeschrittene 11 20.05.2005 20:38
setLocal Problem -seit kurzem erst- PHP-Fortgeschrittene 2 13.11.2004 18:47
Problem mit dateiupload (copy) PHP-Fortgeschrittene 19 26.10.2004 11:51
[Erledigt] PROBLEM: Dateiupload PHP-Fortgeschrittene 3 19.10.2004 20:53
Session wird falsch wieder aufgenommen - Problem mit Session PHP Tipps 2004 2 16.10.2004 14:30
Problem mit alter JavaScript-Funktion woods PHP Tipps 2004 1 13.08.2004 13:34
[Erledigt] Problem mit Sicherheiten bei php PHP-Fortgeschrittene 3 08.08.2004 19:55

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
http://www.php.de/php-fortgeschrittene/59448-problem-mit-dateiupload-bei-eigenem-webserver.html, webserver datei upload, eigener webserver upload, xampp upload, webserver dateien hochladen, temporäre dateien webserver, xampp dateiupload, php datei upload temp verzeichnis, xampp datei upload, datei upload webserver, webserver daten hochladen, php upload tmp dir, phpmailer dateiupload, webserver file upload, cä webserver dateiupload, xampp datenupload php, hochladen von dateien auf webserver, webserver datei-upload, php windows temp php.ini allow upload, datei upload mit eigenem design

Alle Zeitangaben in WEZ +2. Es ist jetzt 22:19 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum