ralf75: Datei hochladen

Hallo,

wie geht das denn nun wirklich mit dem Dateihochladen per HTML-Form und Auswertung mit php? Ich bin am Verzweifeln.

Mein Script:
HTML:

  
<html>  
<body>  
<form action=upload.php  
enctype=multipart/form-data method=post>  
Wählen Sie eine Datei  
<input type=file name=datei>  
<input type=submit value=hochladen>  
</form>  
</body>  
</html>  

PHP (upload.php):

  
<?php  
echo "Der Name der Datei ist ".$HTTP_POST_FILES['datei']['name']."<br>";  
echo "Der Grösse der Datei ist ".$HTTP_POST_FILES['datei']['size']."<br>";  
echo "Die Datei ist vom Typ: ".$HTTP_POST_FILES['datei']['type']."<br>";  
$dateiname=$HTTP_POST_FILES['datei']['name'];  
//copy($datei, "dateien//$dateiname");  
echo "Die Datei wurde hochgeladen";  
?>  

ich habs in PHP auch schon mit der Variable $_FILES probiert:
echo "$_FILES['datei']['name']"
aber alles ohne Erfolg.

Die Informationen kommen einfach nicht im php-script an. Was mache ich falsch?!

Danke für eure Hilfe!

  1. Die Informationen kommen einfach nicht im php-script an. Was mache ich falsch?!

    Du machst keine Debugausgaben.

    Btw: du solltest bei $_FILES bleiben, $HTTP_POST_FILES ist seit PHP 4.1 (kam for fast 10 Jahren raus) deprecated.

  2. Lieber ralf75,

    welchen Teil der Dokumentation hast Du nicht verstanden?

    Liebe Grüße,

    Felix Riesterer.

    --
    ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
  3. Hello,

    Die Informationen kommen einfach nicht im php-script an. Was mache ich falsch?!

    Welche PHP-Version auf welcher Plattform und mit welchem Webserver?
    PHP als CGI oder als SAPI (Modul) des Webservers?

    Die Verwendung der $HTTP_...-Variablen ist schon lange nicht mehr Standard.

    Funktionieren denn normale Post-Requests, also ohne Files?

    Liebe Grüße aus dem schönen Oberharz

    Tom vom Berg

    --
     ☻_
    /▌
    / \ Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
    1. Ja, normale Posts gehn.
      Mittlerweile klappts auch mit $_FILES. Leider kann ich nicht mehr richtig nachvollziehen, wieso es einst nicht funktionierte.

      Es geht jetzt.

      Im html:
      <input type=file name='Datei[$j]'>

      Im php:

        
      $dieDatei = basename($_FILES['Datei']['name'][$j]);  
      
      

      Danke an alle Helfer!

      Hello,

      Die Informationen kommen einfach nicht im php-script an. Was mache ich falsch?!

      Welche PHP-Version auf welcher Plattform und mit welchem Webserver?
      PHP als CGI oder als SAPI (Modul) des Webservers?

      Die Verwendung der $HTTP_...-Variablen ist schon lange nicht mehr Standard.

      Funktionieren denn normale Post-Requests, also ohne Files?

      Liebe Grüße aus dem schönen Oberharz

      Tom vom Berg