login mit session über classe??

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

  • login mit session über classe??

    tach ich bin gerade eine classe am schreiben nur irgendwie kann ich mit der classe keine session registrieren
    PHP-Code:
    function login($username,$userpassword,$mode)
        {
            if(
    $mode == "1"){
                
    setcookie("username""$username"time()+(3600*24*365));
                
    setcookie("userpassword""$userpassword"time()+(3600*24*365));
                
    header ("Location: index.php");
            }else{
                
    $usersession session_id();
                
    $result "UPDATE portal".$this->db_nummer."_users Set usersession = '$usersession' WHERE name = '$username' and password = '$userpassword'";
                
    session_register("usersession");
                
    header ("Location: index.php");
            }
        } 
    aber wenn ich session register irgendwo frei in eine datei schreibe dann gehts komischerweise

  • #2
    Könnte es wohl daran liegen das die Variable $usersession lokal definiert wird und zudem die Verwendung der Funktion session_register() obsolet ist ... verwende doch einfach $_SESSION["usersession"] ... !
    carpe noctem

    [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
    [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

    Kommentar


    • #3
      ich hab gehört das soll auf älteren php versionen nicht laufen stimmt das?

      Kommentar


      • #4
        Ja ... das stimmt ... allerdings gibt's auch noch die Variante $HTTP_SESSION_VARS ... wer 'ne Ältere Version von PHP einsetzt hat eh ein Loch im Knie ... !
        carpe noctem

        [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
        [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

        Kommentar


        • #5
          also was du gesagt hast hab ich jetzt mal versuch geht aber auch nicht ach egal mach ich denn logon eben mit cookies hab kein bock mehr auf sessions

          Kommentar


          • #6
            Muß Du ja wissen ... mal 'ne andere Frage ... hast Du die Session mit session_start() gestartet?
            carpe noctem

            [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
            [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

            Kommentar


            • #7
              ja klar wenn ich in einer anderen datei eine session registriere gehts ja nur irgendwie in der classe nicht

              Kommentar


              • #8
                Re: login mit session über classe??

                Original geschrieben von mrhankey1986m
                [B]tach ich bin gerade eine classe am schreiben nur irgendwie kann ich mit der classe keine session registrieren
                1. überflüssig, weil es PEAR::Auth gibt.

                2. mache Dich bitte etwas kundig über den Session Mechanismus. Wenn der Client den Session-Keks nimmt, ist setcookie() tabu.

                > setcookie("username", "$username", time()+(3600*24*365));
                >setcookie("userpassword", "$userpassword", time()+(3600*24*365));

                Man speichert keine Paßwörter im Sessionfile ab. Das ist fast so schlimm wie PINs per Mailingliste zu veröffentlichen.

                Nach Login und session_start()
                >header ("Location: index.php");

                1. verlangt Location einen absoluten URL
                2. klappt das so auch nur dann, wenn der User den Keks annimmt, weil Du für den "kekslosen" Betrieb nicht die Weitergabe session_name und Session_id als GET Parameter vorsiehst.

                >session_register("usersession");

                Sowas macht man seit PHP > 4.1.0 nicht mehr so.

                Kommentar

                Lädt...
                X