Suchen

Suche

Aktuell

  • Aktuell
  • Kommentare
  • TagCloud
  • Bis jetzt sind noch keine Kommentare geschrieben worden
 .Net   Suche   ASP.Net   Asp.Net   Beta   Buchtipp   C#   CentOS   CoD   DateTime   DiceFight   Funktion   HTML   HowTo   HttpWebRequest   IIS7   JSON   Konfiguration   LCD   Lighttpd   Linux   Media   Microsoft   Mobile   Mono   MySQL   Oracle   Outlook   PHP   PostgreSQL   Programme   Quake3   RC   RealURL   SMTPE   SVN   Server   Snippet   TYPO3   Timeout   Treiber   Tutorial   USB   Vista   WebClient   Windows   bauer-martin.com   bm_chart   ffmpeg   x64 

Randnotiz

W3C

Valid XHTML Valid CSS

Tutorials, HTML - 28.01.2007 11:23 - Alter: 3 yrs
- Keine Kommentare

Tutorial: Dateiupload

Tags: HTML, Tutorial, Dateiupload

Oft ist er hilfreich, wenn Besucher gleich Dateien auf den Server hochladen können. Dies ist mit PHP sehr einfach zu realisieren.

Das Formular

Als erstes benötigen wir ein einfaches Formular, wo der Besucher die Datei auf seinen lokalen Rechner auswählen kann. Der einzige Unterschied zu normalen HTML-Formularen besteht darin, dass ein Input-Feld mit den Typ "file" verwendet wird sowie dass der Enctype "multipart/form-data" lautet. Der rest ist wie gewohnt.

<form enctype="multipart/form-data" name="upload" method="post" action="<?php echo($_SERVER["PHP_SELF"]); ?>">
  <input name="action" type="hidden" value="upload">
  <p>Datei: <input name="datei" type="file" size="30"></p>
  <input name="send" type="submit" id="send" value="Hinzuf&uuml;gen">
</form>

Das Hidden-Inputfeld mit dem Namen "Action" und Wert "upload" verwenden wir, um feststellen zu können, wann der PHP-Code zum upload ausgeführt werden soll.

Der Upload-Code

if($_POST["action"] == "upload"] && $_FILES["datei"]["tmp_name"] != "") {
  copy($_FILES["datei"]["tmp_name"], $_FILES["datei"]["name"]);
}

Zuerst überprüfen wir, ob die Action = upload ist und ob überhaupt eine Datei ausgewählt wurde. Danach kopieren wir die Datei $_FILES["inputfeldname"]["tmp_name"] nach "$_FILES["datei"]["name"]. Diese Variable hat als Wert den ursprünglichen Namen der Datei auf den lokalen Rechner.

Sollte beim Upload ein Fehler auftreten, so kann es sein, dass der Ordner in dem sich das Script befindet die Recht "777" benötigt.

Weitere nützliche Variablen in Zusammenhang mit dem Dateiupload sind:

  • $_FILES['userfile']['name']: Der ursprüngliche Dateiname auf der Client Maschine
  • $_FILES['userfile']['type']: Der Mime-Type der Datei, falls der Browser diese Information zur Verfügung gestellt hat. Ein Beispiel ware "image/gif"
  • $_FILES['userfile']['size']: Die Größe der hochgeladenen Datei in Bytes.
  • $_FILES['userfile']['tmp_name']: Der temporäre Dateiname, unter dem die hochgeladene Datei auf dem Server gespeichert wurde.
  • $_FILES['userfile']['error']: Der Fehlercode im Zusammenhang mit dem hochladen der Datei. ['error'] wurde in PHP 4.2.0 eingeführt.

Mehr Informationen zum Dateiupload findest Du auch in der offiziellen PHP-Dokumentation.



Blink del.icio.us Digg Furl Google Simpy Spurl Technorati Yahoo

Kommentare

  • Bis jetzt sind noch keine Kommentare geschrieben worden

Kommentar schreiben

Ins Gästebuch eintragen
CAPTCHA Bild zum Spamschutz