Problem mit Formular und Array

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

  • Problem mit Formular und Array

    Hallo,

    ich habe eine Datei angebot.php. Damit lese ich eine Textdatei (Artikel-Nr.; Beschreibung; Preis) per PHP in 2 assoziative Arrays:

    Beschreibung[Artikel-Nr.] und
    Preis[Artikel-Nr.] ein.

    In der gleichen PHP-Datei folgt ein HTML-Formular mit 15 Texteingabefeldern für Artikelnummern. Das Formular ruft per action="angebot.php" die Beschreibung und den Preis aus den Arrays ab und gibt sie neben der Artikelnummer auf den Schirm aus.

    Nun das Problem:
    Bei jedem "submit" des Formulars werden die assoziativen Arrays neu aufgebaut. Bei 500kB Textdatei dauert das einige Sekunden.

    Ich würde gerne nur beim ersten Aufruf der angebot.php die Arrays aufbauen. Bei jedem "Submit" sollen nur die Daten aus den Arrays entnommen werden.

    Lothar

  • #2
    dann speicher das Array irgendwo! Sessions=

    Kommentar


    • #3
      wenn ich dich richtig verstanden hab, ist das nur möglich, indem du beim ersten Aufruf deine Arrays in der URL zur nächsten Seite mitgibst.
      Da du ja ein Formular verwendest ist wohl die einfachste Möglichkeit dies zu bewerkstelligen, indem du Hidden-Fields einbaust, die diese werte tragen.

      EDIT:

      oder mit sessions

      @ TobiaZ :P

      tata
      moqui

      [COLOR=red]Ich will keine unaufgeforderten Mails über PHP Fragen. Es gibt ein Forum hier! Und ich bin nicht Scripter für jeden, der mir ne Mail schreibt![/COLOR]

      Kommentar


      • #4
        Ich verwende nur eine Seite.

        Ich habe bis dato noch keine session-variablen eingesetzt. Ich wusste nicht, dass auch arrays gehen.

        Habe ich denn die Möglichkeit abzufragen, ob das array der session-variablen bereits zugewiesen ist? Ansonsten wird bei jedem Aufruf der angebot.php die session_variable wieder neu aufgebaut.

        Kommentar


        • #5
          isset()

          Kommentar


          • #6
            Ok,

            wie ist denn die Syntax für ein assoziatives Array in einer Session-Variable?

            Ohne session lautet das array z.B.:

            beschreibung[$artikelnummer] = $desc1;


            $HTTP_SESSION_VARS["beschreibung"]...???

            Kommentar


            • #7
              schonmal mit mehrdimensionalen arrays gearbeitet?

              ist genauso wie mit normalen stringvariablen. musst dir das nur ebenenmäßig vorstellen.

              Kommentar


              • #8
                Ja klar,

                also geht das so?...

                Das assoziative Array $beschreibung[$artikelnummer] enthält die passende Beschreibung zur Artikelnummer.

                Dann...

                session_register(array("beschreibung"));
                $HTTP_SESSION_VARS["beschreibung"]=$beschreibung;

                Ist in $HTTP_SESSION_VARS["beschreibung"] dann das komplette assoziative array gespeichert? Ich würde dann für die spätere Verarbeitung wieder mit $temp=$HTTP_SESSION_VARS["beschreibung"] auf das den Inhalt mit $temp[$artikelnummer] zugreifen.

                Kommentar


                • #9
                  $_Session[beschr][artnr] wäre die lösung.

                  aber bitte nicht mehr mit register! Das steht doch im Manual!

                  Kommentar

                  Lädt...
                  X