Überprüfen ob Session vorhanden, wenn nicht Session anlegen

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

  • Überprüfen ob Session vorhanden, wenn nicht Session anlegen

    hi,

    ich versuch mich gerade mit sessions und hab probleme mit der umsetzung.

    die page besteht aus mehreren php seiten und auf jeder soll überprüft werden ob eine session schon vorhanden ist, wenn keine existiert soll eine gestartet werden.

    ich steh da irgendwie total aufm schlauch...

    mal wieder danke für die hilfe

  • #2
    Re: Überprüfen ob Session vorhanden, wenn nicht Session anlegen

    session_start() brauchst du doch sowieso auf jeder seite, wenn du dort mit sessions arbeiten willst ...
    in so fern finde ich die frage ziemlich unsinnig.


    wenn du wissen willst, ob die session schon auf einer vorherigen seite gestartet wurde, setze dir dort ein flag in einer session-variablen, und frage es anschließend auf existenz ab.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      session_start macht eigentlich genau das...

      Kommentar


      • #4
        erste datei:
        PHP-Code:
        <?php
        session_start
        ();

        if( !isset(
        $_SESSION['gibts_mich_schon_fragezeichen']) )
                
        $_SESSION['gibts_mich_schon_fragezeichen'] = 'dein wert';
        .
        .
        .
        ?>
        nächste datei:
        PHP-Code:
        <?php
        session_start
        ();

        if( !isset(
        $_SESSION['gibts_mich_schon_fragezeichen']) )
                
        $_SESSION['gibts_mich_schon_fragezeichen'] = 'dein wert';
        .
        .
        .
        ?>
        nächste datei:
        PHP-Code:
        <?php
        session_start
        ();

        if( !isset(
        $_SESSION['gibts_mich_schon_fragezeichen']) )
                
        $_SESSION['gibts_mich_schon_fragezeichen'] = 'dein wert';
        .
        .
        .
        ?>

        soll ich dir noch eine erstellen?


        OffTopic:
        wuhu, 600. post
        [color=black] Important: alt bei <img> ist immer erforderlich · Strings richtig trennen/verbinden · Kiddie-Code hat keine Chance[/color]

        Kommentar


        • #5
          Re: Re: Überprüfen ob Session vorhanden, wenn nicht Session anlegen

          Original geschrieben von wahsaga
          session_start() brauchst du doch sowieso auf jeder seite, wenn du dort mit sessions arbeiten willst ...
          in so fern finde ich die frage ziemlich unsinnig.


          wenn du wissen willst, ob die session schon auf einer vorherigen seite gestartet wurde, setze dir dort ein flag in einer session-variablen, und frage es anschließend auf existenz ab.
          ok kann sein das ich da was missverstanden hab
          aber mit session_start wird eine neue session angefangen oder?

          oder wird nur eine neue angelegt wenn keine existiert?

          Kommentar


          • #6
            Folge mal meinem Link ein Stück weiter oben, da stehts...

            Kommentar


            • #7
              Re: Re: Re: Überprüfen ob Session vorhanden, wenn nicht Session anlegen

              Original geschrieben von st@tic
              ok kann sein das ich da was missverstanden hab
              aber mit session_start wird eine neue session angefangen oder?

              oder wird nur eine neue angelegt wenn keine existiert?
              bitte informiere dich über die grundlagen der funktionalität des session-mechanismus von PHP.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                Re: Re: Re: Re: Überprüfen ob Session vorhanden, wenn nicht Session anlegen

                Original geschrieben von wahsaga
                bitte informiere dich über die grundlagen der funktionalität des session-mechanismus von PHP.
                theoretisch hab ich es verstanden, kanns praktisch nur nicht anwenden.
                außerdem verwirrt mich eine sache.


                PHP-Code:
                session_start();
                echo 
                session_id(); 
                nach einem refresh der seite ist es immernoch die gleiche session_id

                Kommentar


                • #9
                  natürlich - das ist ja auch immer noch dein rechner + dein internet anschluß + dein browser.

                  d.h. mit hoher wahrscheinlichkeit auch der gleiche benutzer. und somit die gleiche session.

                  Kommentar


                  • #10
                    und wieso wird dann sooft die sessionid über die url mit übergeben?
                    nur um auf der nächsten seite zu überprüfen ob $_SESSION[sid] noch mit session_id() übereinstimmt?

                    oder kann man wenn man die sessionid hat irgendwie die session laden?
                    Zuletzt geändert von st@tic; 08.07.2005, 18:55.

                    Kommentar


                    • #11
                      so oft? ich verstehe die frage nicht.

                      ob $_SESSION[sid] noch mit session_id() übereinstimmt?
                      ersteres ist optional. hauptsache der client kann sich ausweisen - entweder mit der sid in der url oder in einem cookie.

                      Kommentar


                      • #12
                        ich meinte das auf vielen seiten die sessionid in der url übergeben wird...
                        aber wofür?

                        Edit: ich glaub ich habs jetzt verstanden.

                        ich hab mir ne kleine abfrage gebastelt die überprüft ob $_GET['sid'] gleich session_id() ist und wenn nicht wird die session zerstört.

                        kann man so handhaben?
                        Zuletzt geändert von st@tic; 08.07.2005, 19:12.

                        Kommentar


                        • #13
                          hauptsache der client kann sich ausweisen

                          Kommentar


                          • #14
                            ich glaub der groschen ist gefallen

                            aber noch ne frage: was sollte ich denn alles beachten um es halbwegs sicher zu machen?

                            ich hab mir (wie oben beschrieben) halt bei nem unterschied die session zerstören zu lassen
                            ist das aussreichend oder sollte ich da irgendwas noch beachten?

                            Kommentar


                            • #15
                              ergibt keinen sinn: wenn es einen unterschied gibt, wird die session erst gar nicht gestartet, weil die sid nicht stimmt. dann gibt's auch nichts zum zerstören.

                              noch ein paar sinnvolle lektüren:
                              http://tut.php-q.net/sessions.html
                              http://tut.php-q.net/login.html

                              Kommentar

                              Lädt...
                              X