Dynamische Tabelle als Formular senden

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

  • Dynamische Tabelle als Formular senden

    Für eine Auswertung soll dynamisch die Bezeichnung der Artikel aus der DB ausgelesen werden (Anzahl variabel). Vorgegeben sind 8 Spalten, die durch den Nutzer auszufüllen sind, die Zahlenwerte enthalten oder auch leer sein können. Vor Eintrag in die DB sollen weiterhin einzelne Spalten der jeweiligen Artikel addiert werden.
    Für eine Zeile (alle Spalten pro Artikel) bekomme ich das wohl hin, auch für alle Artikel und eine Spalte, aber eben nicht für alle Artikel und alle Spalten, außer: ich mache einen spaltenweisen Eintrag in die DB

    Aktuell lese ich mit While die Artikel aus und verwende in den inputfeldern name='Spalte1['$idx'] usw. als Bezeichnung - $idx ist die Artikel-ID.
    Ziel ist es, das Ganze nach Artikel sortiert in die DB einzutragen, dabei soll die komplette Tabelle ein Datensatz darstellen, um eine monatliche Auswertung zu ermöglichen.
    Das DB-Design entspricht z.Z. in etwa auch dem Tabellendesign, da erste Versuche mit einer (zeilenweisen) Einzeleingabe pro Artikel geplant waren.


    Meine Frage(n) nun:
    Wie zerlege ich das $_POST-Array, das mir die einzelnen Spalten wiederum als Array liefert?
    Wie sollte die DB aussehen, um daraus eine monatliche Auswertung zu machen? Aktuell ist noch alles möglich

    Gruß Uwe

  • #2
    Vorgegeben sind 8 Spalten, die durch den Nutzer auszufüllen sind, die Zahlenwerte enthalten oder auch leer sein können.
    Wenn ich das richtig verstanden habe, solltest du an dieser Stelle mal über Normalisierung nachdenken.

    Vor Eintrag in die DB sollen weiterhin einzelne Spalten der jeweiligen Artikel addiert werden.
    Und was ist dabei das Problem? Ein einfaches + reicht doch. Du musst natürlich wissen, welche Werte du addieren willst.

    Für eine Zeile (alle Spalten pro Artikel) bekomme ich das wohl hin, auch für alle Artikel und eine Spalte, aber eben nicht für alle Artikel und alle Spalten, außer: ich mache einen spaltenweisen Eintrag in die DB
    Ich glaube hier musst du etwas konkreter werden. Willst du hinterher noch die Summen der Werte aus den einzelnen Artikel zusammen addiert haben? Das geht nicht in der selben Query. Dazu nimmst du entweder eine zweite Query, oder wenn es sich nur um eine Auswertung handelt, auch durch zusätzlichen PHP-Code. Schau mal, womit du besser fährst.

    Ziel ist es, das Ganze nach Artikel sortiert in die DB einzutragen, dabei soll die komplette Tabelle ein Datensatz darstellen, um eine monatliche Auswertung zu ermöglichen.
    1. Wozu eine Sortierung VOR Eintrag in die DB? Die geht u.U. sowieso kaputt.
    2. wozu eine Tabelle pro Datensatz pro Monat? Kannst du das nicht dynamisch umsetzten?

    Wie zerlege ich das $_POST-Array, das mir die einzelnen Spalten wiederum als Array liefert?
    Wennn du es unbedingt brauchst, dann lauf mit ner Schleife durch das array und bau dir neue Arrays.

    Wie sollte die DB aussehen, um daraus eine monatliche Auswertung zu machen? Aktuell ist noch alles möglich
    Ich wollte gerade schreiben, ob du auch schon eigene Ansätze hast, oder erwartest, ob wir dir dein Programm schreiben. Jetzt hab ichs verstanden. Bis dato ist das ja nicht mehr Als Grundlagenlernen mit ein bisschen Brainstorming.

    Um deine Frage zu beantworten, müssten wir mindestens wissen, was bei der Analyse rauskommen soll. Nicht schlecht wäre natürlich auch die Kenntnis der Basisdaten. Aber Mach dir doch bitte erstmal selbst ein Konzept, bevor du um Hilfe fragst.

    Kommentar


    • #3
      Wie zerlege ich das $_POST-Array, das mir die einzelnen Spalten wiederum als Array liefert?
      Wennn du es unbedingt brauchst, dann lauf mit ner Schleife durch das array und bau dir neue Arrays.
      Ich dachte, ich hätte geschrieben, das genau das mein Problem ist. Ich habe jetzt 8 Arrays (1 pro Spalte) und hätte daraus gern eins pro Zeile. Hier hab ich keinen Ansatzpunkt, weil ich das noch nie gebraucht hab.
      Um mehr gehts eigentlich nicht.

      Kommentar


      • #4
        Warum postest du dann nicht einfach mal die Struktur des Arrays, sondern schweifst total vom Problem ab?

        Und den Hinweis mit der schleife hast du jetzt bekommen, d.h. du kannst zumindest einmal durch das POST-Array iterieren. Wenn du beim Rest wirklich gar keinen Ansatz hast, gucken wir noch mal weiter...

        Kommentar


        • #5
          Original geschrieben von jacobi21
          Ich dachte, ich hätte geschrieben, das genau das mein Problem ist. Ich habe jetzt 8 Arrays (1 pro Spalte) und hätte daraus gern eins pro Zeile.
          Warum benennst du die Inputfelder dann nicht gleich so, dass dir PHP daraus ein Array mit dem gewünschten Aufbau erstellt?

          name="blubb[x][y]"
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar

          Lädt...
          X