Im Formular Array senden?

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

  • Im Formular Array senden?

    Hallo,
    ich habe ein Problem in einer PHP Seite. Vor der Problemdarstellung ein paar Daten:
    PHP-Version: PHP 4.3.0
    Apache 1.3.2.6
    Datenbank: MS SQL 7.0

    Mein Problem:
    Ich habe ein Array, das ich beim ersten Aufruf mit einer Variable fülle
    ( $array = compact($test); ). Jetzt brauche ich das Array mit den darin stehenden Elementen bei einem erneutem Aufruf der Seite wieder.
    Der Erneute Aufruf der Seite geschieht durch ein Formular.
    Meine Frage:
    Kann ich ein Array mit einem Formular "versenden"?
    Info: Zum Senden benutze ich ein einfaches Javascript das OnChange bei der option-Einträge aufgerufen wird. Value der Option-Einträge ist der neue Link.

    Codeauszug:
    if ($array == NULL)
    {
    $array =array();
    $array = compact($test2);
    }else {
    $anzahl = count($array);
    echo $anzahl."<br>";
    $anzahl = $anzahl+1;
    $array = array_push($array,$test);
    }
    print_r($array); // Testausgabe

    echo "<select name='".$test."' onChange=\"Go(this.form.".$test.".options[this.form.".$test.".options.selectedIndex].value)\"><br>";

    echo "<option value=\"./phpseite.php?report=".$report."&".$test."=".$name."&selfilter=".$selfilter."\">".$name."</option>";


    Wie Ihr sehen könnt, habe ich auch ein Problem das Array vernünfig zu füllen.
    Im moment kommt die Fehlermeldung, dass die Funktion Array_push an erster Stelle ein Array verlangt und keinen String. $array wird beim zweiten Aufruf nur als String erkannt, weil ich das Array als 'normale' Variable übergebe.

    Ich wäre sehr, sehr froh, wenn Ihr mir helfen könntet. Ich habe in den Foren/ FAQ leider keine Hilfe gefunden.
    Falls nötig, beschreibe ich gern das Problem genauer oder gebe mehr Code heraus.

    Schon jetzt vielen Dank,
    Lilith
    Bekennender Lokalpatriot:
    www.lippstadt.de =)

  • #2
    vielleicht hift das schon:
    if (is_array($array) statt if ($array == NULL)
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      wenn schon, dann eher if(!is_array($array)) oder?

      $array[]=$test macht übrigens das gleiche wie array_push und meckert auch nich rum
      Ich denke, also bin ich. - Einige sind trotzdem...

      Kommentar


      • #4
        Leider bekomme ich auch bei deinem Ratschlag folgende Fehlermeldung:

        Warning: array_push() [function.array-push]: First argument should be an array in ....../Datei.php on line x

        Ich denke es liegt daran, dass bei der Übertragung aus dem ARRAY ein String wird, weil ich das Array ja wie eine normale Variable übergebe.

        Aber danke für deine Hilfe!
        Ich selber teste auch die ganze Zeit....
        Bekennender Lokalpatriot:
        www.lippstadt.de =)

        Kommentar


        • #5
          s.o.

          hier noch zwei links
          http://php-resource.de/forum/showthr...ze+unserialize
          http://php-resource.de/forum/showthr...ze+unserialize
          Ich denke, also bin ich. - Einige sind trotzdem...

          Kommentar


          • #6
            Hallo!

            Nachdem ich if(!is_array($array)) einesetzt habe und zusätzlich

            $array[]=$test statt array_push kommen wirklich keine Fehlermeldungen mehr. Allerdings werden meine "alten" Array Einträge überschrieben. Gibt es da noch eine Lösung?????
            Bekennender Lokalpatriot:
            www.lippstadt.de =)

            Kommentar


            • #7
              Danke!

              Ich werde mir das mal genauer anschauen. Der Beitrag mit (un-)serialize
              sieht vielversprechen aus. Danke!
              Bekennender Lokalpatriot:
              www.lippstadt.de =)

              Kommentar


              • #8
                Danke &amp; zusätzliche Frage

                Hallo,
                ersteinmal ein großes DANKE, weil die Funktionen serialize und unserialize das Problem Array-Übergabe super lösen!

                Dann hätte ich noch eine Frage:
                Wie kann ich meine jetztigen Einträge im Array behalten und immer wieder neue Eintrage hinzuschreiben? Leider habe ich keine entsprechenden Funktionen gefunden.
                Der Key sollte dabei die Variable sein z.B. $test, Inhalt = $$test
                - geht da überhaupt??????
                Bekennender Lokalpatriot:
                www.lippstadt.de =)

                Kommentar

                Lädt...
                X