Script mit mehreren

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

  • Script mit mehreren

    Hallöchen Leute!

    Habe ein kleines Problem! Ich baue gerade meinen Internet Service auf, und bin dabei ein Script mit mehreren Seiten zu erstellen. Dies geschieht mit einer IF-ELSEIF Anweisung:

    IF ($step=="1") {
    echo ("Dies ist die erste Seite!");
    } ELSEIF ($step=="2") {
    echo ("Dies ist die zweite Seite!");
    } ELSEIF ($step=="3") {
    echo ("Dies ist die dritte Seite!");
    }

    Nun zu meinem Problem: Auf der ersten Seite, muss der User ein paar Infos über sich eingeben!
    Auf der zweiten Seite kommen noch ein paar zusätzliche Daten des Users hinzu und auf der dritten Seite werden die Daten in die Datenbank (MySQL) geschrieben und eine Willkommens-Mail an den User gesendet!
    Nun verschwinden die Daten im Laufe des Scripts! Wenn der User die erste Seite ausgefüllt hat, sind die Daten auf der zweiten Seite noch vorhanden - doch auf der dritten nicht mehr! Somit wird ein leerer Datensatz in die Datenbank geschrieben und die Mail kann nicht versendet werden!

    Gibt es außer dem HTML Tag
    <input type="hidden" name="blablabla" value="blablabla"> noch eine andere Möglichkeit die Daten bis zur dritten Seite zu behalten?
    Die FORM "Methoden" GET und POST habe ich auch schon ausprobiert!

    Bitte dringend um Hilfe!

    Cu,
    Sascha



  • #2
    Versuchs mal mit einem hidden Frame und JavaScript.
    Bei jedem wechsel der Seiten, die Daten einfach an den frame übergeben. Alle Daten werden dabei erst zum Server gesendet, wenn alle Informationen vollständigg vorliegen.

    Gruss
    Berni

    php-Entwicklung | ebiz-consult.de
    PHP-Webhosting für PHP Entwickler | ebiz-webhosting.de
    die PHP Marktplatz-Software | ebiz-trader.de

    Kommentar


    • #3
      tip mit session

      Hallo

      verstehe ich das richtig:

      step 1 ist ein formular das seine daten an step 2 sendet

      step 2 macht aufgrund der daten aus step 1 eine db abfrage

      step 3 schreibt alle daten in die datenbank?


      tip versuchs mit session. im script kommt zuallererst

      session_start();

      für jede variable die bei step 3 noch vorhanden sein soll kommt in step 2 so was

      session_register("variable"); //ohne vorangestelltes $

      und dann im step 3 kannst du auf die variablen zugreifen.:-)

      siehe auch http://php.net/session

      session_
      ------------------------
      http://swisswebgroup.com
      ------------------------

      Kommentar


      • #4
        Ich finde die Idee mit der Sessino auch gut. Du kannst doch am Anfang gleich ne Session starten und die Daten auch immer in die DB bei neuem Aufruf reinschreiben (Session-ID auch in DB als ID). Dann kannst du auch ohne Probleme zwischen vielen Seiten bzw. großen Formularen hinundher springen. Und erst am Ende wird ein Senden-Flag in der DB gesetzt oder das Zeugs als Email verschickt.
        Es wird sicher auch übersichtlicher für dich, wenn du die einzelnen Seiten extra verpackst -> mit der Sessionzuweisung dann ja kein Problem.

        Kommentar


        • #5
          Warum so kompliziert?

          Klappt keine direkte Übergabe des $QUERY_STRING ?

          (Zieladresse des Form-Tags = ... /step3.php?<? echo $QUERY_STRING;?> ...)

          Habs nicht probiert, möglicherweise setzt der Browser ein zweites "?", dächte aber, es müsste funzen.

          ($QUERY_STRING ist der komplette Wert nach dem ? in der URL, also CGI-Query)

          Kommentar


          • #6
            Eine direkt Übergabe beim Aufruf klappt natürlich auch, allerdings mußt du noch nach dem "?" erstmal eine Variable benennen und dann den Inhalt per echo anfügen ->

            ... /step3.php?daten=<? echo $QUERY_STRING;?>

            noch ne Möglichkeit ist, immer ein HiddenForm mitzuführen, daß bei jedem Step mitgeschickt wird und wo alle Daten eingetragen werden.

            Kommentar

            Lädt...
            X