Diego: wo ist mein formularfile hin ? php

Hallo,

mein script postet sichselbst eine Datei, die ich vorher per formular aussuche.

< form action=post usw...
<input type="file" name="datei" size="20">

Wie kann ich nun an den Inhalt der Datei die gesendet wurde rannkommen?

Alle Versuche scheiterten,

selbst soetwas wie :

print $_FILES["datei"]["tmp_name"];

oder

print $HTTP_POST_FILES["datei"]["tmp_name"];

gehen nicht ...

  1. Hi,

    Alle Versuche scheiterten,

    </hilfe/charta.htm#tipps-fuer-fragende>

    Aus deinen Minimalangaben ist es so gut wie unmoeglich, auf eine Ursache zu schliessen.

    MfG ChrisB

    --
    „This is the author's opinion, not necessarily that of Starbucks.“
  2. echo $_POST['datei']

    1. echo $_POST['datei']

      geht auch net

      also:

      <form action="script.php" method=post enctype="multipart/form-data">
      <input type="file" name="datei" id="datei" size="20">
      <input type="hidden" name="lala" >
      <input type=submit value="Senden" class="ok">

      also:

      print $_REQUEST['lala'];

      geht

      print $_FILES["datei"]["tmp_name"];
      oder
      print $HTTP_POST_FILES["datei"]["tmp_name"];

      geht nicht :(

      was mache ich falsch ?

      1. Hi,

        print $_FILES["datei"]["tmp_name"];
        geht nicht :(

        was mache ich falsch ?

        Du machst den ueblichen Newbee-Fehler - anzunehmen, es "muesse schon alles gefunzt" haben, und deshalb keinerlei Fehlerkontrolle.

        Mal als allererstes:
        print_r($_FILES);

        MfG ChrisB

        --
        „This is the author's opinion, not necessarily that of Starbucks.“
        1. print_r($_FILES);

          bekomme :

          Array ( )

          hmmm, wird die Datei nicht gesendet? Komisch ...

          1. Hi,

            print_r($_FILES);

            bekomme :

            Array ( )

            Da sollte zumindest was drinstehen, wenn PHP einen Upload erhalten hat.

            hmmm, wird die Datei nicht gesendet? Komisch ...

            Wie sehen die relevanten php.ini-Einstellungen aus?
            http://www.php.net/manual/en/ini.core.php#ini.file-uploads

            MfG ChrisB

            --
            „This is the author's opinion, not necessarily that of Starbucks.“
            1. Wie sehen die relevanten php.ini-Einstellungen aus?

              ohje, da sieht man dass ich ein anfänger bin, hab noch nie was von
              php.ini gehört, obwohl ich php schon länger benutze ...

              ... ich nehme mal an ich muss eine php.ini ins Hauptverzeichnis legen,
              was soll da drinne stehen, damit die uploads funktionieren ?

              file_uploads=1;

              oder so ?

  3. Hallo,

    mein script postet sichselbst eine Datei, die ich vorher per formular aussuche.

    < form action=post usw...
    <input type="file" name="datei" size="20">

    Wie kann ich nun an den Inhalt der Datei die gesendet wurde rannkommen?

    Alle Versuche scheiterten,

    selbst soetwas wie :

    print $_FILES["datei"]["tmp_name"];

    oder

    print $HTTP_POST_FILES["datei"]["tmp_name"];

    gehen nicht ...

    <form enctype="multipart/form-data" action="upload.php" method="POST">

    Da du daten schicken willst, muss da enctype="multipart/form-data" hin.

    mit <input type="hidden" name="MAX_FILE_SIZE" value="9999999999999" />
    kannst du nochmal die Maximale Größe einstellen, leider ist diese möglichkeit für Erfahrene Personen leicht umgehbar..

    <input name="pic" type="file" />

    Damit kommt die Zeile mit dem "Durchsuchen" button, vorweg, den Durchsuchen Button kann man (noch?) nicht stylen (außer mit paar cheats ;) ).

    mit $_FILES['pic']['tmp_name']  (wobei pic das feld name in dem input tag ist. )  kannst du den Pfad erfahren, wo die Datei vorweg gespeichert ist.
    mit $_FILES['pic']['name'] erfährst du den Namen der Datei
    wenn ich mich nicht irre erfährt man mit $_FILES['pic']['size'] die File größe..

    achja, size in dem input tag , sollte eigentlich für den textinhalt gelten wenn ich mich nicht irre also C:/blah/blah/blah/blah/blah , wenn das über 20zeichen wär, würde es garnicht gesendet werden! (oder garnicht in das Feld rein passen)

    Ich hoffe ich konnte "richtig" helfen =)

    mfG,

    1. echo $begrüßung;

      mit <input type="hidden" name="MAX_FILE_SIZE" value="9999999999999" />
      kannst du nochmal die Maximale Größe einstellen, leider ist diese möglichkeit für Erfahrene Personen leicht umgehbar..

      Da reicht ein handelsüblicher Browser, denn keiner interpretiert diese Angabe. Der Upload findet auf alle Fälle statt. Erst PHP unterbricht die Weiterverarbeitung, wenn ein solcher Parameter in den Formulardaten gefunden wird und die Größe überschritten wurde.

      mit $_FILES['pic']['tmp_name']  (wobei pic das feld name in dem input tag ist. )  kannst du den Pfad erfahren, wo die Datei vorweg gespeichert ist.

      Vorher sollte man sich vergewissern, dass der Fileupload fehlerfrei durchgeführt werden konnte. Dazu sollte man fragen, ob $_FILES['pic']['error'] existiert und ob es den Wert UPLOAD_ERR_OK enthält.

      Es gibt ein PHP-Handbuch-Kapitel über File Uploads.

      echo "$verabschiedung $name";