Frage zu $_FILES

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Frage zu $_FILES

    Hallo!
    Ich lese über eine foreach Schleife Dateinamen aus, welche hochgeladen werden soll!

    PHP Code:
    foreach($_FILES as $file)
    {

        if(
    $file['name']!="")
        {    
    $bildpfad $uploaddir."".$file['name'];
        }

    Ist es möglich, auch den Feldnamen auszuegebn, aus welchem der aktuelle Pfad ausgelsen wird? also sowas wie: $file[Feldname] ??

  • #2
    Ich verstehe nicht ganz, was du auslesen willst? Den Feldnamen des Input-File-Feldes? Falls nein: Was meinst du mit "aus welchem der aktuelle Pfad ausgegeben wird"?
    [FONT="Helvetica"]twitter.com/unset[/FONT]

    Shitstorm Podcast – Wöchentliches Auskotzen

    Comment


    • #3
      Ja, den Namen des Input-File-Feldes.
      ALso ich lese ja aus allen Feldern, welche den Typ "File" haben, den Pfad aus, welchen ich durch den Button "Durchsuchen" angegeben habe, aus.
      Ich habe da 10 Felder, und mann kann auch noch nach belieben ein Feld hinzufügen.
      Das 1. Feld hat den Namen Preistabelle.
      Die anderen Felder haben den Namen Image1......bis ImageX.

      Kein Feld ist aber ein Pflichtfeld.
      Somit muss ich erstmal überprüfen, ob überhaupt ein Pfad drin steht.
      Falls das Feld Preistabelle einen Pfad entählt, soll in die DB was anderes gespeichert werden, als wenn das Feld ImageX einen Link entählt.
      Deswegen hätte ich gerne eine Überprüfung, aus welchem Feld ich gerade den Pfad auslese!
      Last edited by Kangarooo; 07-01-2010, 09:33.

      Comment


      • #4
        HTML Code:
        <input type="file" name="Image[0]">
        <input type="file" name="Image[1]">
        <input type="file" name="Image[2]">
        <input type="file" name="Image[hinten]">
        <input type="file" name="Image[vorn]">
        <input type="file" name="Image[oben]">
        Wir werden alle sterben

        Comment


        • #5
          Ne, mit der Namesvergabe habe ich ja keine Probleme! Das geschieht automatisch mit einer javascript funktion! mir geht es wirklich nur darum, den Feldnamen zu bekommen, aus welchen gerade mit $file[name] der pfad ausgelesen wird.

          Comment


          • #6
            Es wird kein Pfad aus irgendeinem Feld ausgelesen, sondern du bekommst lediglich den Pfad der Datei in die PHP die hochgeladene Datei gepackt hat! Wie du an den Namen des Feldes kommst, wirst du herausfinden, wenn du dir das $_FILES-Array ausgeben lässt und die Struktur untersuchst!
            [FONT="Helvetica"]twitter.com/unset[/FONT]

            Shitstorm Podcast – Wöchentliches Auskotzen

            Comment


            • #7
              Originally posted by Kangarooo View Post
              ...den Feldnamen zu bekommen, aus welchen gerade mit $file[name] der pfad ausgelesen wird.

              Verstehe ich nicht, aber wenn die Feldnamen alle von Image1 bis ImageX gehen, kannst du die doch über ne einfache Schleife abfragen! Wenn Du die dynamisch erstellst, kannst Du z.B. mit

              if (document.Form.Name != null) {
              ... Anweisung ...
              }

              nach dem abschicken des Formulars prüfen, ob das Feld vorhanden ist,
              oder was meinst du?

              mfg streuner
              Erst wenn der letzte FTP Server kostenpflichtig, der letzte GNU-Sourcecode verkauft, der letzte Algorithmus patentiert,
              der letzte Netzknoten verkommerzialisert ist, werdet Ihr merken, dass Geld nicht von alleine programmiert.

              "Diese Software verdient die 3 großen GGG: --- Gesehen --- Gelacht --- Gelöscht ---"

              Comment


              • #8
                Naja, aber die ganzen pfade bekommt er doch aus den input feldern!?
                wie soll ich mir denn dass $_FILES array ausgeben lassen wenn sich daran nicht die feldnamen befinden?

                Comment


                • #9
                  Originally posted by Kangarooo View Post
                  Ne, mit der Namesvergabe habe ich ja keine Probleme!
                  Doch, hast du:
                  Die anderen Felder haben den Namen Image1......bis ImageX.
                  Wann immer du beginnst, in einem Bezeichner selbst eine „Nummerierung” einzuführen, hast du ein Problem.

                  Arrays sind in 99,999% der Fälle der bessere Weg.
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Comment


                  • #10
                    Originally posted by streuner View Post
                    Verstehe ich nicht, ....
                    Also:
                    PHP Code:
                    <input type="file" name="preistabelle" value="" id="preistabelle" />
                    <
                    input type="file" name="image1" value="" id="image1" />
                    <
                    input type="file" name="image2" value="" id="image2" /> 
                    So, dann lese ich über die foreach Schleife JEDES file-feld aus.

                    PHP Code:
                    foreach($_FILES as $file)
                    {
                      if(
                    $file['name']!="")
                        {    
                             
                    $bildpfad $uploaddir."".$file['name'];
                             
                    $insertpic="INSERT INTO pictures (pic, beschreibung) VALUES ( $bildpfad, "Landschaft")
                        }

                    So, wenn aber das Feld "Preistabelle" ausgelesen wird, soll in eine andere Datenbank geschrieben werden.

                    Comment


                    • #11
                      Originally posted by Kangarooo View Post
                      Naja, aber die ganzen pfade bekommt er doch aus den input feldern!?
                      Nein!
                      Einzig den Dateinamen und der File_Type kommt vom Browser.

                      Originally posted by Kangarooo View Post
                      wie soll ich mir denn dass $_FILES array ausgeben lassen wenn sich daran nicht die feldnamen befinden?
                      Die Feldamen werden im $_FILES Array als Key verwendet.
                      Sind also drin.
                      Wir werden alle sterben

                      Comment


                      • #12
                        @combie
                        Ahhh...sehr gut!!! Und wie lese ich dann dass $_Files Array dann aus um an die feldnamen zu kommen?? Wenn du mir dass noch als COde schreibn könntest wäre ich erstmal glücklcih! :-)
                        Weil dann könnte ich dann sagen:
                        PHP Code:
                        if ($_Files[feldname]=="preistabelle")
                        {
                            
                        andere aktion!

                        Comment


                        • #13
                          PHP Code:
                          foreach($a as $key=>$value)
                          {
                          if(
                          $key=="wert")
                          {
                          }

                          Bitte Beachten.
                          Foren-Regeln
                          Danke

                          Comment


                          • #14
                            array_keys
                            Wir werden alle sterben

                            Comment


                            • #15
                              Geht dass denn so???

                              PHP Code:
                              foreach($_FILES as $key=>$file)
                              {
                                  
                                          
                                      
                                  if(
                              $file['name']!="")
                                  {    
                                  
                                      if(
                              $key=="0")
                                      {
                              ..... 
                              Irgendwie nämlcih nciht!

                              Comment

                              Working...
                              X