Die Titanik sinkt schneller, als die Sessions laufen ;)

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

  • Die Titanik sinkt schneller, als die Sessions laufen ;)

    Hallo

    Ich habe so langsam die schn... so richtig voll.
    Ich teste jetzt schon seit drei Monaten mit den Sessions herum.

    Folgende Sachlage.
    Ich teste local mit easyPHP.
    Da habe ich die PHP 4.2.0 Version.
    register-globals habe ich ausgestellt (Wegen der Sicherheit).

    Ich komme mit den neuen Befehlen überhaupt nicht mehr klar.
    Vor allem wenn man hier Beispiele sieht und dann bei php.net/Manuel sowas steht:
    Wenn Sie $_SESSION verwenden und register_globals deaktivieren, sollten Sie session_register(), session_is_registered() und session_unregister() nicht verwenden, wenn Ihre Scripte mit PHP 4.2 und niedriger funktionieren sollen.

    Heißt das jetzt nun um eine neue Variable in der Session zu registrieren, reicht da jetzt der $_SESSION Befehl oder muß man da doch wie manche hier posten weiterhin session_register benutzen?
    Aber dann wäre der Thread von php.net ja schwachsinnig und erst recht verwierrend. Oder bin ich nur ein riesen Depp?

    Genauso versteh ich das nicht so richtig mit $_POST, $_GET usw nicht.

    Kann vielleicht, bitte, jemand mir ein Beispiel mit einem Formular und dem session registrierung (mit den neuen Befehlen) posten?

    Ich bedanke mich schonmal im vorraus.

    MFG,
    Sleeper

  • #2
    ok ..
    jemand kommt auf deine seite ..

    da gibts ein login formular ..

    name und password per post natürlich ..

    dann hast du in der php seite die variablen $_POST[name] und $_POST[password]
    anhand dieser kannst dir ja dann die user id oder so aus der db holen .. diese wiederum kannst in der session speichern ..

    wie du bereits erwähnt hast gelten die funktinen session_xy() nicht merh ..
    neuerdings einfach so:

    PHP-Code:
    $_SESSION[usrid] = $row[usrid]; // $row steht für eine zeile von der db abfrage .. 
    auf weiteren seiten könntest dann mittels

    PHP-Code:
    if ($_SESSION[usrid] > 0) {
      
    // eingeloggt
      // etc ..

    prüfen ob jemand eingeloggt ist ..
    um den user auszuloggen einfach die variable usrid aus der session löschen ..

    PHP-Code:
    unset($_SESSION[usrid]) 
    ich hoffe dies hilft dir beim verständnis

    anmerkung: beispiel dient nur der verdeutlichung .. keineswegs sicher - zb könnte die sessionid weitergegeben werden ..
    mfg,
    [color=#0080c0]Coragon[/color]

    Kommentar


    • #3
      etwas
      Baer erstmal besten dank für dein schnelles Posting.

      Hätte da noch zwei Fragen.
      zB, wenn ich direkt vom Formular in die Session speichern möchte, muß ich folgendes benutzen:
      PHP-Code:
      $_SESSION[name] = $_POST[name]; 
      Aber wie muß den das Formular aussehen?
      So vielleicht?
      PHP-Code:
      <form method="POST" action="main.php">
      <input type="text" name="<?php $_POST[name?>">
      <input type="submit" value="Abschicken">
      <input type="reset" value="Zurücksetzen">
      </form>

      Kommentar


      • #4
        <form method="post" action"action.php">
        <input type="text" name="test" />
        </form>

        und in action.php
        PHP-Code:
        <?php echo $_POST["test"]; ?>
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          Aaaah jetzt ja.
          Eine Session!


          Jetzt habeich den Bockmist kapiert.

          Noch mal besten dank an euch beiden.

          Sleeper

          Kommentar


          • #6
            Hi,
            also wenn ich das jetzt richtig verstanden habe, dann wird mit
            PHP-Code:
            $_SESSION[usrid
            eine neue SessionVariable registriert???
            Oder ist dies nur der Zugriff auf die Registrierte SessionVariable?
            mfg
            Günni


            Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
            Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
            Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
            City-Tiger - Online durch die Straßen tigern...

            Kommentar


            • #7
              PHP-Code:
              $_SESSION["foo"]="bar"
              Anlegen einer neuen Sessionvariable( , bzw. aktualisieren des Inhaltes, falls schon registriert)
              PHP-Code:
              echo $_SESSION["foo"]; 
              Zugriff auf eine (hoffentlich schon) registrierte Sesseionvariable;
              Ich denke, also bin ich. - Einige sind trotzdem...

              Kommentar


              • #8
                OK, dann ist es jetzt klar für mich.
                Danke
                mfg
                Günni


                Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
                Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
                Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
                City-Tiger - Online durch die Straßen tigern...

                Kommentar


                • #9
                  i live to please
                  Ich denke, also bin ich. - Einige sind trotzdem...

                  Kommentar


                  • #10
                    Session Problem - Fehlermeldung

                    Hallo,

                    arbeite local auch mit easyPHP.
                    Wenn ich meine Seite aufrufe, dann bekomme ich aber immer folgenden Fehler:

                    Warning: session_start(): open(C:\IMP\Homepages\EasyPHP1-7\tmp\\sess_8d7b4ab76615f80f411d5b6a2784b456, O_RDWR) failed: No such file or directory (2) in g:\homepages\easyphp1-7\www\projekt1\include\session.php on line 1

                    Ich habe keine Zeilenumbrüche in den Bereichen, wo die Session-Datei eingebunden wird. In der Sessiondatei selbst auch nicht. Das kann ja auch zu Fehlern führen.

                    An was kann es noch liegen?
                    Gruß
                    Holger

                    Kommentar


                    • #11
                      pfadproblem?

                      open(C:\IMP\Homepages\EasyPHP1-7\tmp\\sess_8d7b4ab76615f80f411d5b6a2784b456 ...
                      Kissolino.com

                      Kommentar


                      • #12
                        wäre ne mögliche Fehlerquelle.
                        Aber wie kann das kommen?
                        Was muss ich wo ändern?
                        Gruß
                        Holger

                        Kommentar


                        • #13
                          Original geschrieben von FlatEric
                          >wäre ne mögliche Fehlerquelle.

                          Es ist die Fehlerquelle

                          >Aber wie kann das kommen?
                          >Was muss ich wo ändern?

                          php.ini:
                          session.save_path

                          Kommentar

                          Lädt...
                          X