MasterUser: Input File-Upload

Wie kann ich bei einem Datei-Upload die Dateien so einschränken, dass nur CSV-Dateien hochgeladen werden können.
Ich kenne das Attribut accept, aber welche Werte sind dort als Eingabe erlaubt bzw. möglich?

  1. Hi,

    Wie kann ich bei einem Datei-Upload die Dateien so einschränken, dass nur CSV-Dateien hochgeladen werden können.
    Ich kenne das Attribut accept, aber welche Werte sind dort als Eingabe erlaubt bzw. möglich?

    am besten lässt sich das per PHP überprüfen:

    if($uploaded_type=="text/csv")  
    {  
    //upload  
    }  
    else echo "Nur CSV-Dateien erlaubt!";
    

    davidp

    1. Hi,

      Wie kann ich bei einem Datei-Upload die Dateien so einschränken, dass nur CSV-Dateien hochgeladen werden können.
      Ich kenne das Attribut accept, aber welche Werte sind dort als Eingabe erlaubt bzw. möglich?

      oder du schaust hier: http://de.selfhtml.org/html/formulare/datei_upload.htm

      <input name="Datei" type="file" size="50" maxlength="100000" accept="text/csv">  
      
      

      davidp

      1. Moin!

        <input name="Datei" type="file" size="50" maxlength="100000" accept="text/csv">

          
        Ein nettes Gimmick. Aber den User letztlich bestimmen lassen, was er hochlaedt, kann kaum das Ziel sein. Um eine serverseitige Pruefung kommt man nicht herum.  
        
        -- 
        "Die Diebesgilde beklagte sich darueber, dass Mumm in aller Oeffentlichkeit behauptet hatte, hinter den meisten Diebstaehlen steckten Diebe."  
              - T. Pratchett
        
  2. Hi,

    Ich kenne das Attribut accept, aber welche Werte sind dort als Eingabe erlaubt bzw. möglich?

    unerheblich. Diese und jede andere Einschränkung erfolgt sich weitgehenden Ignoriertwerdens. Du könntest zwar versuchen, mit JavaScript den Namen zu überprüfen - allerdings sagt der exakt gar nichts über den darin enthaltenen Datentyp aus.

    Überprüfe serverseitig den Inhalt der Daten und lehne sie ggf. ab.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hi!

      Du könntest zwar versuchen, mit JavaScript den Namen zu überprüfen - allerdings sagt der exakt gar nichts über den darin enthaltenen Datentyp aus.

      Nanu... keine Belehrung ueber die Sinnlosigkeit einer JS Ueberprufung als solche?

      Bist wohl mit oeh... Lagerarbeiten beschaeftigt und widmest Dich lieber den 300 Dingen in demselben?

      --
      "Die Diebesgilde beklagte sich darueber, dass Mumm in aller Oeffentlichkeit behauptet hatte, hinter den meisten Diebstaehlen steckten Diebe."
            - T. Pratchett
      1. @@Steel:

        nuqneH

        Nanu... keine Belehrung ueber die Sinnlosigkeit einer JS Ueberprufung als solche?


        Nein, nur eine über die Sinnlosigkeit eines Deppenleerzeichens als solches. ;-)

        Eine clientseitige Überprüfung ist sinnvoll, um falsche Daten gar nicht erst zum Server zu schicken. Keinesfalls ersetzt sie eine serverseitige Überprüfung.

        Qapla'

        --
        Bildung lässt sich nicht downloaden. (Günther Jauch)
        1. Hi!

          Eine clientseitige Überprüfung ist sinnvoll, um falsche Daten gar nicht erst zum Server zu schicken. Keinesfalls ersetzt sie eine serverseitige Überprüfung.

          Klar. Aber ich sehe das anders. Ich finde, dass nach einem Hinweis, welche Dateien entgegengenommen werden, einfach eine serverseitige Pruefung genuegt, die bei einem Fehler ausgibt: "Eure Dummheit kotzt mich an."

          --
          "Die Diebesgilde beklagte sich darueber, dass Mumm in aller Oeffentlichkeit behauptet hatte, hinter den meisten Diebstaehlen steckten Diebe."
                - T. Pratchett
          1. Hi,

            Klar. Aber ich sehe das anders. Ich finde, dass nach einem Hinweis, welche Dateien entgegengenommen werden, einfach eine serverseitige Pruefung genuegt, die bei einem Fehler ausgibt: "Eure Dummheit kotzt mich an."

            die Dummheit zu glauben, das Umbenennen von virus.exe in daten.csv reiche aus, um eine Sicherheitslücke auszunutzen? Nun ja.

            Cheatah

            --
            X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
            X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
            X-Will-Answer-Email: No
            X-Please-Search-Archive-First: Absolutely Yes
            1. Hi,

              »» Klar. Aber ich sehe das anders. Ich finde, dass nach einem Hinweis, welche Dateien entgegengenommen werden, einfach eine serverseitige Pruefung genuegt, die bei einem Fehler ausgibt: "Eure Dummheit kotzt mich an."

              die Dummheit zu glauben, das Umbenennen von virus.exe in daten.csv reiche aus, um eine Sicherheitslücke auszunutzen? Nun ja.

              Hm. Ich werte den Umstand, dass ich daran nichtmal gedacht habe als Beweis, das ich noch nicht als Misantrop gelte.

              --
              "Die Diebesgilde beklagte sich darueber, dass Mumm in aller Oeffentlichkeit behauptet hatte, hinter den meisten Diebstaehlen steckten Diebe."
                    - T. Pratchett
              1. Hello,

                die Dummheit zu glauben, das Umbenennen von virus.exe in daten.csv reiche aus, um eine Sicherheitslücke auszunutzen? Nun ja.

                Da habe ich mehr Angst vor den den Servermietern meistens unbekannten Datei-Endungen, die zur Auswertung einer Datei als PHP-Datei führen. Der Rest ist dann leider oft nur nocb Kinderkacke.

                Liebe Grüße aus dem schönen Oberharz

                Tom vom Berg

                --
                Nur selber lernen macht schlau
                http://bergpost.annerschbarrich.de