burghi'sphp-dummies.de
PHP für Einsteiger und Fortgeschrittenere - an laufenden Scripten erklärt
07.09.2010, 01:58 Uhr - Impressum

Tutorials - Praxis - File Upload - Das Array FILES

Tutorials - Praxis
File Upload: Das Array FILES
Seit PHP 4.1.0 steht das Array $_FILES zur Verfügung.
Hierdrin werden Infos über alle hochgeladenen Dateien gesammelt. Im Beispielscript ist dies ja nur eine, es könnten aber x-beliebige sein.

Denn: in $_POST steckt gar keine Info über die abgeschickte File:
(lade irgendetwas hoch)
gesetzt in $_POST 'text', 'absenden'
gesetzt in $_FILES 'uploadFile'
<?php
print_r($_POST);
?>
Text:
Datei:
FormularQuelltext anzeigen
<html>
     <form method="post" action="/script.php" enctype="multipart/form-data">
          Text: <input type="text" name="text" value="bla"><br />
          Datei: <input type="file" name="uploadFile"><br />
          <input type="submit" name="absenden" value="Script starten">
     </form>
</html>
Was man braucht ist das array $_FILES.
$_POST durch $_FILES ersetzt gibt schon wesentlich mehr infos über die hochgeladene Datei aus:
"uploadFile" ist der Name des Datei-Hochladen-Felds ( <input type="file" name="uploadFile"> )
gesetzt in $_POST 'text', 'absenden'
gesetzt in $_FILES 'uploadFile'
<?php
print_r($_FILES);
?>
Text:
Datei:
FormularQuelltext anzeigen
<html>
     <form method="post" action="/script.php" enctype="multipart/form-data">
          Text: <input type="text" name="text" value="bla"><br />
          Datei: <input type="file" name="uploadFile"><br />
          <input type="submit" name="absenden" value="Script starten">
     </form>
</html>
Mit der Datei, die ich grad hochlud schaut jetzt die Ausgabe so aus (Quelltext-Häkchen setzen):

Array
(
    [uploadFile] => Array
        (
            [name] => burghi 04-2002.jpg
            [type] => image/jpeg
            [tmp_name] => /home/dummies/root/tmp/phpD91.tmp
            [error] => 0
            [size] => 17396
        )

)


Und was sagt das jetzt ?

[name] := der Name, den das Bild auf meinem Rechner hatte.
[type] := der Typ des Bildes, in diesem Falle ein JPEG-Bild
[tmp_name] := die Datei unter der die Datei grad abgelegt wurde
[error] := der Fehlercode, der eventuell erzeugt wurde (siehe Fehlercodes)
[size] := die Größe der Datei in Bytes

Juhu. Das sind eigentlich alle Infos um weiterarbeiten zu können.
© 2004-2005 - Impressum