sessions, ich verzweifle mit

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

  • sessions, ich verzweifle mit

    Hallo! :-(

    Zig Tutorials und immer noch keine wirkliche Ahnung von Sessions, wie

    man sie anwendet und das allgemein ohne Cookies.

    Hat jemand ein Beispiel dazu, wie ich folgendes mit Sessions realisiere, die nicht auf Cookies angewiesen sind, sondern die SID in der URL übergeben?

    Seite 1: Einführungs-Seite, nur mit Text, kein Formular
    Mit einem Weiter-Button auf Seite 2

    Seite 2: Formular mit vielen TextFelder, RadioButtons, etc.
    Mit einem Weiter-Button auf Seite 3

    Seite 3:
    a) mit einem Zurück-Button wieder auf Seite 2
    b) oder mit einem Weiter-Button auf Seite 4-ENDE

  • #2
    was verstehst du denn nicht? im manual steht doch alles wissenswerte drin.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      andere Frage bzw. Frage anders

      Hallo!

      Also folgendes verstehe ich nicht so ganz:

      Mit session_start() starte ich eine neue Session, bzw. nehme die aktuelle wieder auf.

      Die Informationen, welche Session ich denn nun wieder aufnehme; darum muss ich mich nicht kümmern. Das geschieht alleine mittels Cookies.

      Dann steht drinnen, dass viele Cookies ausgeschaltet haben und man die SID quasi manuell weitergeben muss in z.B. der url.

      Und da kommt die Frage. Wie macht man das dann?! übergibt man dem session_start() dann die SID, oder wie geschieht das ganze, wenn Cookies deaktiviert sind?


      Hab ich das zumind. soweit schon mal richtig verstanden?

      Kommentar


      • #4
        wenn cookies ausgeschaltet sind, macht apache/php das anhängen an die links automatisch.

        teste es mal bei die.. cookies ausschalten und deine seite besuchen.
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          dankeschön

          Danke! Ja, dann teste ich das mal ... muss leider das ganze neu schreiben, weil mich die Sache mit dem "Fallback" derart verwirrt hat, dass ich das ganze in die Tonne treten konnte ... naja ... aufs neue ...

          Kommentar


          • #6
            kannst du mir bitte helfen?

            Also ich krieg das irgendwie nicht gebacken. Kannst du mir vielleicht sagen, was ich da falsch mache?

            Ich will eigentlich nur zwischen den Formularen Vor- und zurückblättern können, ohne dass die Werte verloren gehen.

            sIndex.htm:
            das ist quasi die Einstiegs-Seite mit z.B. einem Menü. Das "Menü" besteht hier nur aus dem Link zum Seiten-Verteiler
            PHP-Code:
            <html>
            <
            head>
            <
            title>Untitled Document</title>
            <
            meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
            </
            head>

            <
            body bgcolor="#FFFFFF" text="#000000">
            <
            a href="sPage.php">Zum Seitenverteiler</a>
            </
            body>
            </
            html
            sPage.php:
            das ist nun der Seiten-Verteiler
            PHP-Code:
            <?php
                session_save_path
            ("./tmp");
                @
            session_start();
                
                
            session_register("buttonNext0");
                
            session_register("buttonNext1");
                
            session_register("Vorname");
                
                echo 
            "buttonNext0: ".$buttonNext0;
                if (
            $buttonNext0 !="") {
                    include (
            "sPage1.php");
                    exit;
                }
                if (
            $buttonNext1 != "") {
                    include (
            "sPage2.php");
                    exit;
                }
                if (
            $buttonBack1 !=""){
                    include (
            "sPage1.php");
                    exit;
                }
                
                include (
            "sPage0.htm");
            ?>
            sPage0.htm:
            diese Seite wird angezeigt, wenn der Seiten-Verteiler quasi im Anfangszustand ist, man also quasi noch nichts weiter geklickt hat
            PHP-Code:
            <html>
            <head>
            <title>Untitled Document</title>
            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
            </head>

            <body bgcolor="#FFFFFF" text="#000000">
            <?php
                session_save_path
            ("./tmp");
                @
            session_start();
            ?>
            <form name="form1" method="post" action="sPage.php">
              <input type="submit" name="buttonNext0" value="Next0 >">
            </form>
            </body>
            </html>
            sPage1.php:
            hier sollen dann z.B. im Formular mehrere Textfelder sein, Radiobuttons, etc.
            PHP-Code:
            <html>
            <head>
            <title>Untitled Document</title>
            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
            </head>

            <body bgcolor="#FFFFFF" text="#000000">
            <?php
                session_save_path
            ("./tmp");
                @
            session_start();
            ?>
            <form name="form1" method="post" action="sPage.php">
              <p>
                  <?php
                    
            echo '<input type="text" name="Vorname" value="'.$Vorname.'">';
                
            ?>
              </p>
              <p>
                <input type="submit" name="buttonNext1" value="Next1 >">
              </p>
            </form>
            </body>
            </html>
            sPage2.php:
            von dieser Seite aus soll später Vor- UND zurückgeblättert werden. Momentan interessant ist jedoch, dass das Zurückblättern klappt.
            Es werden also quasi die Daten des Formulars angezeigt
            Wegen dem Vor-Und zurück-blättern kann ich das ganze leider nicht mit einem normalen Formular-Handling machen :-(
            PHP-Code:
            <html>
            <head>
            <title>Untitled Document</title>
            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
            </head>

            <body bgcolor="#FFFFFF" text="#000000">
            <?php
                session_save_path
            ("./tmp");
                @
            session_start();
            ?>
            <?php
                    
            echo "Vorname: ".$Vorname;
                
            ?>
            <form name="form1" method="post" action="sPage.php">
              <input type="submit" name="buttonBack1" value="< Zurück">
            </form>
            <p>&nbsp;</p>
            </body>
            </html>

            Kommentar


            • #7
              1. lasse mal das @ hier weg. @session_start();
                dann bekommst du auch fehlermeldungen gezeigt. und da steht, dass schon ein header gesendet wurde.
              2. session_start() MUSS vor alles anderen ausgaben gemacht werden. also noch vor <html> und co
              3. auf deiner einleitungsseite muss es auch rein
              4. eine suche im forum oder im manual hätte dir diese fragen erspart
              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


              Kommentar


              • #8
                Hallo!

                Vielen Dank für Deine Tipps, auch wenn dich vielleicht solche Fragen nerven. Zumind. könnte ich das verstehen. Allerdings denke ich, dass wenn man schon einen gewissen Wissensstand hat, manche Formulierungen einem klar sind, während ein Anfänger wie ich, da so manches nicht versteht, oder gar falsch versteht. Zumind. quäle ich mich nicht absichtlich so lange hier mit diesen Zeilen.

                Und auch deine Tipps konnte ich wohl nicht wirklich richtig umsetzen. Zumind. klappt das ganze immer noch nicht, wie es soll.

                nun geändert:

                sIndex.htm:
                das ist quasi die Einstiegs-Seite mit z.B. einem Menü. Das "Menü" besteht hier nur aus dem Link zum Seiten-Verteiler


                PHP-Code:
                <?php
                    session_save_path
                ("./tmp");
                    
                session_start();
                ?>
                <html>
                <head>
                <title>Untitled Document</title>
                <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
                </head>

                <body bgcolor="#FFFFFF" text="#000000">
                <a href="sPage.php">Zum Seitenverteiler</a>
                </body>
                </html>


                sPage.php:
                das ist nun der Seiten-Verteiler

                PHP-Code:

                <?php
                    session_save_path
                ("./tmp");
                    
                session_start();
                    
                    
                session_register("buttonNext0");
                    
                session_register("buttonNext1");
                    
                session_register("Vorname");
                    
                    echo 
                "buttonNext0: ".$buttonNext0;
                    if (
                $buttonNext0 !="") {
                        include (
                "sPage1.php");
                        exit;
                    }
                    if (
                $buttonNext1 != "") {
                        include (
                "sPage2.php");
                        exit;
                    }
                    if (
                $buttonBack1 !=""){
                        include (
                "sPage1.php");
                        exit;
                    }
                    
                    include (
                "sPage0.htm");
                ?>

                sPage0.htm:
                diese Seite wird angezeigt, wenn der Seiten-Verteiler quasi im Anfangszustand ist, man also quasi noch nichts weiter geklickt hat

                PHP-Code:
                <?php
                    session_save_path
                ("./tmp");
                    
                session_start();
                ?>
                <html>
                <head>
                <title>Untitled Document</title>
                <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
                </head>

                <body bgcolor="#FFFFFF" text="#000000">
                <form name="form1" method="post" action="sPage.php">
                  <input type="submit" name="buttonNext0" value="Next0 >">
                </form>
                </body>
                </html>

                sPage1.php:
                hier sollen dann z.B. im Formular mehrere Textfelder sein, Radiobuttons, etc.

                PHP-Code:
                <?php
                    session_save_path
                ("./tmp");
                    
                session_start();
                ?>
                <html>
                <head>
                <title>Untitled Document</title>
                <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
                </head>

                <body bgcolor="#FFFFFF" text="#000000">
                <form name="form1" method="post" action="sPage.php">
                  <p>
                      <?php
                        
                echo '<input type="text" name="Vorname" value="'.$Vorname.'">';
                    
                ?>
                  </p>
                  <p>
                    <input type="submit" name="buttonNext1" value="Next1 >">
                  </p>
                </form>
                </body>
                </html>

                sPage2.php:
                von dieser Seite aus soll später Vor- UND zurückgeblättert werden. Momentan interessant ist jedoch, dass das Zurückblättern klappt.
                Es werden also quasi die Daten des Formulars angezeigt
                Wegen dem Vor-Und zurück-blättern kann ich das ganze leider nicht mit einem normalen Formular-Handling machen :-(

                PHP-Code:
                <?php
                    session_save_path
                ("./tmp");
                    
                session_start();
                ?>
                <html>
                <head>
                <title>Untitled Document</title>
                <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
                </head>

                <body bgcolor="#FFFFFF" text="#000000">

                <?php
                        
                echo "Vorname: ".$Vorname;
                    
                ?>
                <form name="form1" method="post" action="sPage.php">
                  <input type="submit" name="buttonBack1" value="< Zurück">
                </form>
                <p>&nbsp;</p>
                </body>
                </html>

                Kommentar


                • #9
                  Original geschrieben von Tom S
                  Und auch deine Tipps konnte ich wohl nicht wirklich richtig umsetzen. Zumind. klappt das ganze immer noch nicht, wie es soll.
                  was klappt denn nicht?

                  wenn du eine php-version >= 4.1.x verwendet solltest du kein session_register mehr nehmen. $_SESSION ist besser.

                  also aus
                  session_register("Vorname");
                  wir
                  $_SESSION["Vorname"] = "dein name eben";
                  INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                  Kommentar


                  • #10
                    das...

                    Na es klappt nicht, was Sinn und Zweck des ganzen ist: Vor- *und* Zurückblättern.

                    Kannst du das bei dir vielleicht kurz testen? Die Dateien sind ja mit Copy und Past flux erstellt.

                    Vielleicht wissen wir dann, was ich falsch mache?!

                    Den neuen Tipp habe ich wieder beherzigt - keine Besserung

                    Kommentar


                    • #11
                      frühestens kann ich das heute abend testen, wenn ich @home bin. derzeitig bin ich @work.

                      zum anderen interessieren mich deine fehlermeldungen. hast du welche?

                      ergänzung zum letzten tipp.
                      PHP-Code:
                      // zuweisung
                      $_SESSION["Vorname"] = "dein name eben";

                      // ausgabe/auslesen
                      echo $_SESSION["Vorname"]; 
                      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                      Kommentar


                      • #12
                        Oh ja stimmt ...

                        manchmal vergisst man gerne, dass andere auch noch etwas anderes zu tun haben, als einem die Fragen zu beantworten

                        Nein, Fehlermeldungen bekomme ich keine, auch jetzt, nachdem ich das @ weggelassen habe, wie du es mir geraten hast.

                        Was passiert ist, dass z.B. nach dem Drücken des Buttons, es trotzdem nicht weiter geht, bzw. der $Vorname nicht mitgeschleift wird

                        Irgendwie deprimiert mich das gerade

                        Kommentar


                        • #13
                          heute abend schaue ich mir das mal an, wenn du bis dahin keine lösung hast.
                          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                          Kommentar


                          • #14
                            poste mal deinen aktuellen code, besser zip ihn!
                            [color=red]musse rühre, musse probiere=>iss a pulsgeber ![/color]

                            Kommentar


                            • #15
                              hi eddi.
                              er hat ihn doch schon hier. mache einfach mal copy&paste.
                              danke, wenn du das testest. dann brauche ich heute abend nicht ran...
                              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                              Kommentar

                              Lädt...
                              X