Home

Dateiuploads mit PHP

Dienstag, 1. Mai 2007 | Autor: Pr0g

Das erste Uploadscript (Teil 3)

Wer das Script nicht selber zusammensetzen möchte kann nun das komplette Script in die “upload.php” kopieren und dann testen:

<?php

// Prüfen ob eine Datei geschickt wurde, falls nicht wurde das Formular noch nicht gesendet
if (!isset($_FILES['meine_datei'])) {

?>

<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="1048576" />
Datei: <input type="file" name="meine_datei" />
<input type="submit" value="Hochladen" />
</form>

<?php

} else {
  
// Quelldatei im tmp-Ordner
  
$source_file $_FILES['meine_datei']['tmp_name'];

  
// Zieldatei im dateien-Ordner
  
$target_file 'dateien/' $_FILES['meine_datei']['name'];

  
// Prüfen ob der Upload erfolgreich war
  
if ($_FILES['meine_datei']['error'] == UPLOAD_ERR_OK) {
    
// Versuchen die Datei aus dem Quell- ins Zielverzeichnis zu verschieben
    
if (move_uploaded_file($source_file$target_file)) {
      
// Erfolgsmeldung ausgeben
      
echo 'Datei erfolgreich hochgeladen!';
    } else {
      
// Fehlermeldung ausgeben
      
echo 'Beim Verschieben der Datei trat ein Fehler auf!';
    }
  } else {
    
// Fehler ermitteln
    
$error '';

    switch (
$_FILES['meine_datei']['error']) {
      case 
UPLOAD_ERR_INI_SIZE:
        
$error 'Die hochgeladenen Datei überschreitet das in der php.ini gesetzte Maximum!';
        break;
      case 
UPLOAD_ERR_FORM_SIZE:
        
$error 'Die hochgeladenen Datei überschreitet die in MAX_FILE_SIZE gesetzte Größe!';
        break;
      case 
UPLOAD_ERR_PARTIAL:
        
$error 'Die hochgeladene Datei wurde nur teilweise übertragen!';
        break;
      case 
UPLOAD_ERR_NO_FILE:
        
$error 'Es wurde keine Datei hochgeladen!';
    }

    
// Fehlermeldung ausgeben
    
echo 'Fehler beim Hochladen: <b>' $error '</b>';
  }

  
// Zurück-Link anbieten um eine weitere Datei hochzuladen
  
echo '<br /><br /><a href="upload.php">Zurück</a>';
}

?>

Seiten: 1 2 3 4 5 6 7 8

Tags » , , «

Trackback: Trackback-URL | Feed zum Beitrag: RSS 2.0
Thema: Artikel

Diesen Beitrag kommentieren.

Kommentar abgeben