Array aus Formular in DB speichern > fatal error

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

  • Array aus Formular in DB speichern > fatal error

    Hallo zusammen,

    ich habe ein Problem, das ich leider nicht alleine lösen kann. Ich habe ein Formular mit dynamischen Formularfeldern – also mit der Möglichkeit auf Mausklick weitere Formularfelder hinzuzufügen. Das ganze wird auch korrekt übertragen nur bin ich nicht in der Lage das auch abzuspeichern. Mein Code dazu sieht aus wie folgt:

    PHP-Code:
    $objFeed $_POST[];
    foreach (
    $objFeed->items as $arrItem) {

    $a $arrItem['a'];
    $b $arrItem['b']; 
    $c $arrItem['c']; 
    $update "INSERT INTO ngn (`id` , `inputa` , `inputb` , `inputc`) VALUES ('', '$a', '$b', '$c');";
    $sqlupdate mysql_query($update);
     } 
    Das Ergebnis ist: Fatal error: Cannot use [] for reading in /kunden/domain.de/webseiten/test/save_array.php on line 10

    Ich vermute mal schwer dass das hier $objFeed = $_POST[]; Unsinn ist, habe aber nicht den geringsten Plan wie es denn korrekt sein müsste.

    Ich wäre sehr dankbar wenn jemand helfen kann,

    Viele Grüße
    Sub

  • #2
    PHP-Code:
    $objFeed $_POST
    Peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      vielen dank schon mal! Der Fehler taucht jetzt nicht mehr auf, dafür meldet der Server nun:

      Warning: Invalid argument supplied for foreach() in /kunden/domain.de/webseiten/test/save_array.php on line 11

      dort steht:

      PHP-Code:
      foreach ($objFeed->items as $arrItem) { 

      Kommentar


      • #4
        Was ergibt denn ein
        PHP-Code:
        print_r($_POST);
        print_r($objFeed); 
        Peter
        Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
        Meine Seite

        Kommentar


        • #5
          Zitat von sublevel Beitrag anzeigen
          Ich vermute mal schwer dass das hier $objFeed = $_POST[]; Unsinn ist
          Ja, und zwar schon auf der linken Seite vom Gleichheitszeichen.
          Wenn du mit $_POST arbeiten willst, dann solltest du das tun - Umkopiererei in andere Variablen ist im Normalfall nicht nötig.

          Warning: Invalid argument supplied for foreach() in /kunden/domain.de/webseiten/test/save_array.php on line 11

          foreach ($objFeed->items as $arrItem) {
          $_POST ist ein Array, und wenn $objFeed jetzt das gleiche ist - was zum Geier willst du dann dort mit dem Operator zum Zugriff auf Methoden/Eigenschaften von Objekten?

          Wenn du nicht weisst, wie man mit Arrays umgeht, dann schlage ich vor, du liest das erst mal im Manual nach.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            @kropff: das ergibt

            Array ( [a] => Array ( [0] => inhalt 1 [1] => inhalt 2 [2] => inhalt 3 ) [b] => Array ( [0] => 12 [1] => 12 [2] => 12 ) [c] => Array ( [0] => 81 [1] => 81 [2] => 81 ) )

            Array ( [a] => Array ( [0] => inhalt 1 [1] => inhalt 2 [2] => inhalt 3 ) [b] => Array ( [0] => 12 [1] => 12 [2] => 12 ) [c] => Array ( [0] => 81 [1] => 81 [2] => 81 ) )

            das entspricht dann auch meinen eingaben (
            inhalt1, 1, 81
            inhalt2, 2, 81
            inhalt 3, 12, 81)

            @wahsaga

            damit magst du recht haben – aber wenn ich komplett verstünde was ich da tue, dann müsste ich nicht nachfragen. Ich verstehe das ganze Thema nicht ausreichend (und ich finde nicht dass das ein Grund ist sich nicht daran zu versuchen) und versuche durch eure besseren Beispiele zu lernen.

            Kommentar


            • #7
              Zitat von sublevel Beitrag anzeigen
              damit magst du recht haben – aber wenn ich komplett verstünde was ich da tue, dann müsste ich nicht nachfragen.
              Wer sich über Grundlagen informiert, bevor er loslegt, muss auch nicht wegen solchem Kleinkram fragen.

              Also, los:
              http://www.php.net/manual/en/language.types.array.php
              http://tut.php-quake.net/de/array.html
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                vielen dank für die links. ich verstehe sie leider dennoch unzureichend. Wenn Du glaubst, dass es besser wäre wenn ich mich da selber durchqäulen muss dann ist das natürlich dein gutes recht ;-). ich verstehs nur einfach nicht. wenn mir also jemand konkret an meinem beispiel sagen kann wie man das anders machen kann – vielen dank!

                Kommentar


                • #9
                  Zitat von sublevel Beitrag anzeigen
                  PHP-Code:
                  $a $arrItem['a'];
                  $b $arrItem['b']; 
                  $c $arrItem['c']; 
                  $update "INSERT INTO ngn (`id` , `inputa` , `inputb` , `inputc`) VALUES ('', '$a', '$b', '$c');";
                  $sqlupdate mysql_query($update);
                   } 
                  Laut deinem Post zur Ausgabe von den print_r()'s wird es eh darin enden, das der Query ein schönes 'Array()' in deine Datenbankfelder schreibt anstatt der Werte die du eingegeben hast...

                  Gruß Björn

                  Kommentar


                  • #10
                    Und vorher probiert du mal das aus:
                    PHP-Code:
                    foreach ($_POST as $arrItem => $value
                    Peter
                    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                    Meine Seite

                    Kommentar


                    • #11
                      Zitat von sublevel Beitrag anzeigen
                      vielen dank für die links. ich verstehe sie leider dennoch unzureichend.
                      Was verstehst du denn nicht?

                      Wenn Du glaubst, dass es besser wäre wenn ich mich da selber durchqäulen muss dann ist das natürlich dein gutes recht ;-)
                      So wie deins, dich auf "ich nix verstehen" zu berufen und darauf zu warten, dass dir jemand die Basics noch mal in Privatunterricht erklärt ... nur ich weiss nicht, ob ich an deiner Stelle so lange warten wollen würde.
                      I don't believe in rebirth. Actually, I never did in my whole lives.

                      Kommentar


                      • #12
                        @wahsaga

                        ich habe zu große Defizite auf das gesamte (php/mysql) bezogen. was ich kann ist, mit ein wenig Hilfe bestimmte Lösungen aus bereits gemachten Erfahrungen zu erschaffen.

                        Programmieren ist nicht mein beruf und ich verdiene damit auch kein Geld (nur damit hier nicht der Anschein entsteht ich würde andere Leute meinen Job erledigen lassen). ich werde wohl nie die Zeit finden, das Thema komplett zu verstehen. ich habe aber von Zeit zu Zeit das Problem dass ich (pro bono!) ein paar Zeilen PHP erstellen soll und dabei eben doch oft an meine Grenzen stoße. Diese verschieben sich natürlich – aber nur sehr langsam. ich hatte gehofft hier für dieses konkrete Problem eine konkrete Lösung zu finden. Wenn ich mir die vorgeschlagenen Seiten ankucke dann stolpere ich über so viele Inhalte, dass ich es mir kaum vorstellen kann in naher Zukunft eine Lösung für mein Problem zu finden. Mir fällt es auch leichter nachzuvollziehen und nachzuschlagen, wenn ich an meiner speziellen Anwendung sehe, wie das korrekt gelöst wird

                        danke,

                        sub

                        Kommentar


                        • #13
                          Zitat von sublevel Beitrag anzeigen
                          ich hatte gehofft hier für dieses konkrete Problem eine konkrete Lösung zu finden.
                          Hir gibt es leider nur Hilfe zur Selbsthilfe. Wenn du willst, dann verschiebe ich das zur Projekthilfe, da du hier keine Lösung präsentiert bekommst. Auch wenn es in deinem Fall nicht unbedingt zutrifft, so sind hier Codeschnorrer nicht gerne gesehen.

                          Ansonsten empfehle ich dir dieses Machwerk. Wurde extra für Anfänger wie dich gemacht.

                          Peter
                          Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                          Meine Seite

                          Kommentar


                          • #14
                            ok*– das verstehe ich. ich danke dir für deine hilfe (bzw. allen). auch natürlich für den link. ich habe mir die halbe nacht damit um die ohren geschlagen und tatsächlich eine lösung gefunden wie es funktioniert. ob die lösung effektiv ist weiß ich allerdings nicht ; )

                            lg

                            sub

                            Kommentar


                            • #15
                              Wenn du eine Lösung gefunden hast, dann poste sie doch bitte. Falls jemand ein ähnliches Problem hat (und wider Erwarten die Sufu nutzt).
                              ob die lösung effektiv ist weiß ich allerdings nicht ; )
                              Ach keine Angst, dann werden wir uns schon melden .

                              Peter
                              Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                              Meine Seite

                              Kommentar

                              Lädt...
                              X