Mehrdimensionales Array File Updload

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Mehrdimensionales Array File Updload

    Hallo,
    ich habe ein Script welches ein Mehrdimensionales Array (Bilder) hochladen soll und anschließend in der entsprechenden Kategorie angezeigt werden soll.

    Jede Kategegorie hat mindestens einen Inhalt. Kategorien können beliebig festgelegt werden.

    grafikContent[0][2] sollte mir sogesehen aus der 1. Kategorie das 3. Bild anzeigen.

    Hier ist der Code, wie zumindest der Datei Upload funktioniert.

    HTML-Code:
    <input type="file" name="grafikContent[]" value="" />
    (Mit einem Satz eckigen Klammern funktioniert der Upload, mit 2 und den entsprechenden Information über Kategorie und Platznummer nicht)

    PHP-Code:
    $grafikContent = array();
    $gi 0;

    foreach (
    $_FILES['grafikContent']['error'] as $key => $error) {
        if (
    $error == UPLOAD_ERR_OK) {
            
    $tmp_name $_FILES['grafikContent']['tmp_name'][$key];
            
    $name $_FILES['grafikContent']['name'][$key];
            
    move_uploaded_file($tmp_name"images/$name");
            
            
    $grafikContent[$gi][$key] = "images/$name";

                
    $gi++;
        }
    $gi 0;

    Es klappt natürlich nicht, da $key in meinem Test mit 2 Kats und jeweils 2 Inhalten, ingesamt 4 Bilder zum schluss den Wert $key = 3 hat.

    Wie setze ich mein Array auf diese Werte:
    grafikContent[0][0] = erstes bild
    grafikContent[0][1] = zweites Bild
    grafikContent[1][0] = drittes Bild
    grafikContent[1][1] = viertes Bild

    Sorry, falls es verwirrend sein soll, aber ich bin schon lange an dem Projekt heute dran und komme einfach nicht weiter.

    Vielen DAnk für eure Hilfe.

  • #2
    Wie setze ich mein Array auf diese Werte:
    grafikContent[0][0] = erstes bild
    grafikContent[0][1] = zweites Bild
    grafikContent[1][0] = drittes Bild
    grafikContent[1][1] = viertes Bild
    Indem du sie bereits im HTML-Quelltext "fix" vorgibst.

    Kommentar


    • #3
      Hi danke für deine Antwort. Ich habe das bereits versucht und er spuckt mir aus, dass der den Index grafikContent nicht kennt. Was kann ich machen? Gibt es evtl. Umwege oder so? Vielen Dank für Hilfe

      Kommentar


      • #4
        Zitat von Kronos Beitrag anzeigen
        Was kann ich machen?
        Debuggen …

        Kontrollausgabe des Inhaltes von $_FILES per print_r/var_dump ist in solchen Fällen immer der erste Schritt.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          So habe jetzt 2 Kategorien erstellt mit jeweils Zwei Contents ergo 4 Bilder.

          print_r Ergebnis
          Code:
          Array (     [name] => Array         (             [0] => Array                 (                     [0] => address-book-new.png                     [1] => application-exit.png                 )              [1] => Array                 (                     [0] => dashboard-show.png                     [1] => dialog-ok.png                 )          )      [type] => Array         (             [0] => Array                 (                     [0] => image/png                     [1] => image/png                 )              [1] => Array                 (                     [0] => image/png                     [1] => image/png                 )          )      [tmp_name] => Array         (             [0] => Array                 (                     [0] => C:\xampp\tmp\phpA.tmp                     [1] => C:\xampp\tmp\phpB.tmp                 )              [1] => Array                 (                     [0] => C:\xampp\tmp\phpC.tmp                     [1] => C:\xampp\tmp\phpD.tmp                 )          )      [error] => Array         (             [0] => Array                 (                     [0] => 0                     [1] => 0                 )              [1] => Array                 (                     [0] => 0                     [1] => 0                 )          )      [size] => Array         (             [0] => Array                 (                     [0] => 18304                     [1] => 4277                 )              [1] => Array                 (                     [0] => 2735                     [1] => 2949                 )          )  ) 
          Array (     [name] => Array         (             [0] => Array                 (                     [0] => address-book-new.png                     [1] => application-exit.png                 )              [1] => Array                 (                     [0] => dashboard-show.png                     [1] => dialog-ok.png                 )          )      [type] => Array         (             [0] => Array                 (                     [0] => image/png                     [1] => image/png                 )              [1] => Array                 (                     [0] => image/png                     [1] => image/png                 )          )      [tmp_name] => Array         (             [0] => Array                 (                     [0] => C:\xampp\tmp\phpA.tmp                     [1] => C:\xampp\tmp\phpB.tmp                 )              [1] => Array                 (                     [0] => C:\xampp\tmp\phpC.tmp                     [1] => C:\xampp\tmp\phpD.tmp                 )          )      [error] => Array         (             [0] => Array                 (                     [0] => 0                     [1] => 0                 )              [1] => Array                 (                     [0] => 0                     [1] => 0                 )          )      [size] => Array         (             [0] => Array                 (                     [0] => 18304                     [1] => 4277                 )              [1] => Array                 (                     [0] => 2735                     [1] => 2949                 )          )  )
          Und Fehler:
          Code:
          <b>Notice</b>:  Undefined offset: 0 in <b>C:\xampp\htdocs\WebContent\index.php</b> on line <b>216</b><br />
          <br />
          <b>Notice</b>:  Undefined offset: 0 in <b>C:\xampp\htdocs\WebContent\index.php</b> on line <b>216</b><br />
          <br />
          <b>Notice</b>:  Undefined offset: 1 in <b>C:\xampp\htdocs\WebContent\index.php</b> on line <b>216</b><br />
          <br />
          <b>Notice</b>:  Undefined offset: 1 in <b>C:\xampp\htdocs\WebContent\index.php</b> on line <b>216</b><br />
          Zeile 216:
          PHP-Code:
          <img class="contentimg" src="'.$grafikContent[$i][$e].'" title="i='.$i.' e='.$e.'" width="50"/> 

          Kommentar


          • #6
            An der Ausgabe von print_r kannst du doch sehen, wie das Array aufgebaut ist … nicht so, wie du darauf zuzugreifen versuchst.
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar

            Lädt...
            X