php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2010

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 29.08.2010, 13:58  
Neuer Benutzer
 
Registriert seit: 29.08.2010
Beiträge: 12
PHP-Kenntnisse:
Anfänger
nmueller77 befindet sich auf einem aufstrebenden Ast
Standard Datei upload $_File wird nicht übergeben

Hallo,

Als Anfänger habe ich folgendes Problem: Ich möchte Dateien per Browser auf einen Server hoch laden.
Verwendet wird ein Apache/2.0.44 (Unix) PHP/4.3.0 Server der auf einer Dreambox 7020 (Linux-basierter Festplatten TV receiver).

Ich nutze method="post" enctype="multipart/form-data" (siehe die beiden verwendeten Dateien weiter unten) Die Dateien wurden erfolgreich auf einem anderen System getestet. Das deutet auf eine fehlerhafte Server/PHP Konfiguration hin.

Mein 1. Test sieht wie folgt aus

Datei: "upload_form2.php"

PHP-Code:
<h1>Hallo</h1>
 <
form action="upload2.php" method="post"
 
enctype="multipart/form-data">
 <
input type="file" name="probe" />
 <
input type="submit" value="upload" />
 </
form
Datei:"upload2.php"
PHP-Code:
<?php
print_r
($_FILES);
echo 
$_FILES['probe']['tmp_name']; //test-ausgabe
echo test//test
        
if (isset($_FILES['probe']) and ! $_FILES['probe']['error'])
{  
  
move_uploaded_file($_FILES['probe']['tmp_name'], "./newfile.txt");
 
  
printf("Die Datei %s steht jetzt als " ."newfile.txt zur Verfügung.<br />\n"$_FILES['probe']['name']);
  
printf("Sie ist %u Bytes groß und vom Typ %s.<br />\n",
 
  
$_FILES['probe']['size'], $_FILES['probe']['type']);
}
?>
Leider scheint die Variable name="probe" nach der Übergabe an die Datei "upload2.php" leer zu sein. Es erscheint nur "Array()" und das Wort "test" auf der folgenden Seite. Bisherige Hinweise deuten darauf hin, dass kein HTTP upload stattfindet.

Als zweiter Test haben ich dann folgende Datei "upload_form3.php" getestet.
PHP-Code:
<form enctype="multipart/form-data" action="" method="POST">
    <input name="userfile" type="file">
    <input type="submit" value="Send File">
</form>
<pre><?php print_r($_FILES); ?></pre>
Nach dem Drücken des Buttons "Send File" erscheint "Aray ()" und das Feld zum eintragen der Datei die hochgeladen werden soll ist wieder leer.

Weitere Tests/Checks
1)
post_max_size = 8M
upload_max_filesize = 2M

Die Datei, die ich hochladen möchte ist aber kleiner als 2MByte.

2) Das ansprechen mit der direkten IP (vermuteter domainname issue) hat nicht geholfen.

3)Die access.log enthält:
meine IP - - [29/Aug/2010:05:50:20 +0000] "GET /upload_form2.php HTTP/1.1" 200 174
meine IP - - [29/Aug/2010:05:50:34 +0000] "POST /upload2.php HTTP/1.1" 200 20

3) Die error.log
ist leer.

4) Rechte der Ordner hdd/opt/httpd/htdocs sind auf 755


Ich habe die Frage bereits in einem anderen Forum gestellt, leider bisher ohne Erfolg.

Hat jemand einen Tip zur Fehlersuche oder Lösung? Vorab Danke.
nmueller77 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 29.08.2010, 14:00  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard

Die Zeile hier ist aber Unsinn denke ich

PHP-Code:
move_uploaded_file($_FILES['probe']['tmp_name'], "./newfile.txt"); 
und müsste so aussehen

PHP-Code:
move_uploaded_file($_FILES['probe']['tmp_name'], "pfad_zum_zielverzeichnis/".$_FILES['probe']['name']); 
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Alt 29.08.2010, 14:05  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.072
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Wieso Unsinn? Und es hiflt ja nicht, wenn das Array ohnehin leer ist.

Wird eine Fehlermeldung mit
Code:
<?php
error_reporting(-1);
ini_set('display_errors', 1);
ausgegeben?

PHP-Code:
echo '<pre>'var_dump($HTTP_POST_FILES), '</pre>'
ist dann auch leer, nehme ich an!?

[edit]

Zitat:
Ich habe die Frage bereits in einem anderen Forum gestellt, leider bisher ohne Erfolg.
Gut, dass du das erwähnst, aber der Link wäre auch brauchbar, sonst bekommst du von uns noch mal die selben Tipps.

Für alle, die sich für die Vorgeschichte interessieren: http://www.phpforum.de/forum/showthread.php?t=255896.

[edit2]

Was sagt die php.ini Konfigurationseinstellung file_uploads?
Zitat:
Bestimmt, ob Datei-Uploads per HTTP erlaubt sind.

Geändert von Asipak (29.08.2010 um 14:23 Uhr).
Asipak ist offline  
Alt 29.08.2010, 14:44  
Neuer Benutzer
 
Registriert seit: 29.08.2010
Beiträge: 12
PHP-Kenntnisse:
Anfänger
nmueller77 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Asipak Beitrag anzeigen

Wird eine Fehlermeldung mit
Code:
<?php
error_reporting(-1);
ini_set('display_errors', 1);
ausgegeben?
nein alles leer wie zuvor


Hier der Code den ich getestet habe:
PHP-Code:
<form enctype="multipart/form-data" action="" method="POST">
    <input name="userfile" type="file">
    <input type="submit" value="Send File">
</form>
<pre><?php 
error_reporting
(-1);
ini_set('display_errors'1);
print_r($_FILES); ?>
echo '<pre>', var_dump($HTTP_POST_FILES), '</pre>';
</pre>



Zitat:
Zitat von Asipak Beitrag anzeigen

PHP-Code:
echo '<pre>'var_dump($HTTP_POST_FILES), '</pre>'
ist dann auch leer, nehme ich an!?
Hier muss ich gleich nocheinmal rein schauen. Da habe ich wohl noch etwas nicht verstanden, deinen Quelltext richtig einzubinden. Die Ausgabe hier ist:

echo '

', var_dump($HTTP_POST_FILES), '

';






Zitat:
Zitat von Asipak Beitrag anzeigen
Was sagt die php.ini Konfigurationseinstellung file_uploads?
Die php.ini habe ich gezipt als php.txt.zip angehängt.

; Whether to allow HTTP file uploads.
file_uploads = On

Vorab besten Dank.
Angehängte Dateien
Dateityp: zip php.txt.zip (13,8 KB, 18x aufgerufen)
nmueller77 ist offline  
Alt 29.08.2010, 15:33  
Erfahrener Benutzer
 
Registriert seit: 28.09.2008
Beiträge: 1.168
PHP-Kenntnisse:
Fortgeschritten
Koala befindet sich auf einem aufstrebenden Ast
Standard

mal wieder jemand der zwei Foren beschäftigen will:
Datei upload Variable wird nicht übergeben - Seite 3 - Forum: phpforum.de
__________________
Eine if-else-Abfrage nimmt, ordentlich geschrieben eine Menge Platz weg. Platzsparend geht es mit einem ternären Operator.
Koala ist offline  
Alt 29.08.2010, 15:45  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.072
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Das hat er doch bereits im Ausgangsposting erwähnt.
Zitat:
Ich habe die Frage bereits in einem anderen Forum gestellt, leider bisher ohne Erfolg.
Und der Link steht in #3.

Gruß
Asipak ist offline  
Alt 29.08.2010, 15:47  
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

Bitte beachten: Anmerkungen zu Crosspostings

[MOD: Thread geschlossen]
[MOD: Reopen]
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--

Geändert von nikosch (29.08.2010 um 18:13 Uhr).
nikosch ist offline  
Alt 29.08.2010, 18:54  
Neuer Benutzer
 
Registriert seit: 29.08.2010
Beiträge: 12
PHP-Kenntnisse:
Anfänger
nmueller77 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Asipak Beitrag anzeigen

PHP-Code:
echo '<pre>'var_dump($HTTP_POST_FILES), '</pre>'
ist dann auch leer, nehme ich an!?
So nun nochmal mit einem hoffentlich richtigen Quelltext:

PHP-Code:
<form 
enctype="multipart/form-data" action="" method="POST">
    <input name="userfile" type="file">
    <input type="submit" value="Send File">
</form>

<pre>
    <?php 
error_reporting
(-1);
ini_set('display_errors'1);
print_r($_FILES);
echo 
'<pre>'var_dump($HTTP_POST_FILES), '</pre>'
    
?>
</pre>
Und das Ergebnis ist:

Array
(
)

array(0) {
}


Also leider leer.
Hat jemand weitere Tips oder vieleicht die Zeit sich die vorher angehängte php.ini einmal anzusehen?


PS: Für mein fehlerhaftes Verhalten möchte ich mich auch an dieser Stelle nochmals entschuldigen und für die entgegengebrachte Toleranz bedanken.
Ich habe um eine Schließung, des vorherigen Treds im vorherigen Forum gebeten, da ich vermute in absehbarer Zeit hier keine Lösung zu meinem Problem zu finden. Ich hoffe das ich damit niemanden verärgert habe.
Grüße
nmueller77
nmueller77 ist offline  
Alt 30.08.2010, 20:56  
Neuer Benutzer
 
Registriert seit: 29.08.2010
Beiträge: 12
PHP-Kenntnisse:
Anfänger
nmueller77 befindet sich auf einem aufstrebenden Ast
Standard

heute habe ich nach weiteren php.ini's auf meiner Dreambox mit

find / -name php.ini

gesucht und eine weitere in
/var/mnt/hdd/tmp/conf/
gefunden, diese habe ich umbenannt. Das hat aber leider auch nichts genutzt.

Meine php.ini liegt in:
/var/mnt/hdd/opt/httpd/conf/php.ini
nmueller77 ist offline  
Alt 30.08.2010, 22:03  
Neuer Benutzer
 
Registriert seit: 29.08.2010
Beiträge: 12
PHP-Kenntnisse:
Anfänger
nmueller77 befindet sich auf einem aufstrebenden Ast
Standard

So nun habe ich mir zum Test eine "Simulations-Server-Umgebung" auf meinem Mac instaliert. Hier bekomme ich zumindest Rückgabewerte wie am Beispiel von Asipak. Der Code:

PHP-Code:
<?php 
error_reporting
(-1);
ini_set('display_errors'1);
print_r($_FILES);
echo 
'<pre>'var_dump($HTTP_POST_FILES), '</pre>'
    
?>
Bringt:
Array ( [userfile] => Array ( [name] => ebay_Verkaufen.ods [type] => [tmp_name] => [error] => 6 [size] => 0 ) ) array(1) { ["userfile"]=> array(5) { ["name"]=> string(1 "ebay_Verkaufen.ods" ["type"]=> string(0) "" ["tmp_name"]=> string(0) "" ["error"]=> int(6) ["size"]=> int(0) } }


Hat denn niemand sonst noch eine Idee, was an den Servereistellungen auf der Dreambox falsch sein kann?
nmueller77 ist offline  
 


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
[Erledigt] Datei / File Upload mit Datenbankeintrag frank1973 PHP Tipps 2010 11 21.04.2010 22:55
Bei Upload mit Jquery Multifile-Plugin wird immer nur eine Datei hochgeladen Silent PHP Tipps 2010 20 25.02.2010 08:24
Datei Upload mit Statusanzeige Flokle PHP Tipps 2009 5 29.09.2009 17:49
SWF Upload - post daten übergeben Buschdieb JavaScript, Ajax und mehr 2 23.07.2009 15:25
Datei an nusoap-Funktion übergeben fabsen2102 PHP-Fortgeschrittene 3 29.08.2008 18:24
datei upload problem thecracked PHP Tipps 2008 5 11.07.2008 06:23
Session an weitere Datei übergeben Mano PHP Tipps 2007 3 21.07.2007 13:46
Wo bleibt die temporäre Datei beim Upload ggfan PHP Tipps 2006 5 31.03.2006 23:45
Datei Upload sammt Dateisplittung PHP Tipps 2007 4 09.12.2005 12:08
Datei Upload sammt Dateisplittung PHP Tipps 2007 1 09.12.2005 11:36
Datei Upload in DB nur bis 1 MB möglich PHP Tipps 2005-2 18 07.06.2005 16:03
Problem mit Datei upload PHP Tipps 2005 16 24.03.2005 00:23
Formular Daten an Funktion in selber Datei übergeben PHP Tipps 2004 5 21.07.2004 13:42
[Erledigt] Mit Java Programm eine XML Datei an php script übergeben PHP-Fortgeschrittene 5 19.07.2004 12:27
Datei Upload mit PHP - Probleme PHP Tipps 2004 12 04.06.2004 12:26

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
$_file, http://www.php.de/php-einsteiger/71260-datei-upload-_file-wird-nicht-uebergeben.html, php $_file, <input type=\file\ php nicht übergeben, $_file upload, php datei wird nicht übergeben, upload file wird nicht übergeben, datei formular wird nicht übergeben, var_dump($_file), $_files nimmt nur 2 dateien, $_file error 4 immer leer, php dateien hochladen, jquery ajax $_files, php $_files, php upload übergibt datei nicht, die datei %s steht jetzt als, $_files wird nicht übergeben, php upload an funktion übergeben, $_file var_dump, php file wird nicht übergeben

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:41 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