session problem

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

  • session problem

    Hallo!

    Habe ein Session Problem. Das geht einfach nicht. Was mache ich falsch?

    login_auth.php:
    PHP-Code:
        <?php
        
    // Verbinden mit der Datenbank
        
    include ('../mysql.php');

        
    $sql "select * FROM verfasser WHERE vf_bn='$benutzername' AND vf_pw='$passwort'";
        
    mysql_query($sql);
        
        
    $num mysql_affected_rows();
        
        if(
    $num 0)
        {
        
    session_start();
        
    session_register("benutzername");
        
    session_register("passwort");
        
    header("location: http://www.domain.com/menu.php");
        }
        
        else
        {
        
    header("location: http://www.domain.com/login.php");
        }
        
        
    ?>
    Nachfolgend bei richtigem login gehts zum menu:
    PHP-Code:
    <?php
        session_start
    ();
        if (!
    $_SESSION['benutzername'] || !$_SESSION['passwort'])
        {
        
    header("location: http://www.domain.com/login.php");
        exit;
        }
    ?>
    Aber da komme ich immer wieder zurück zum login. Was ist falsch?

    Danke für eure Hilfe

    php123

  • #2
    Do not user session_register();

    Benutze das Session Array $_SESSION

    Kommentar


    • #3
      session_register() ist so was von veraltet
      Besser
      PHP-Code:
      $_SESSION['benutzername'] = 'rudi';

      if(isset(
      $_SESSION['benutzername']) && $_SESSION['benutzername'] == 'rudi'){
            
      //alles klar der User darf weiter
      }else{
           
      //etwa ein Hacker ????

      Gruss

      tobi
      Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

      [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
      Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

      Kommentar


      • #4
        Und mysql_num_rows() verwenden, weil nur diese Fkt mit Select zusammenarbeitet.
        mysql_num_rows() liefert die Anzahl der Datensätze einer Ergebnismenge. Diese Funktion ist nur gültig für SELECT Befehle. Haben Sie eine INSERT, UPDATE oder DELETE Abfrage ausgeführt und möchten die Anzahl der betroffenen Datensätze ermitteln, verwenden Sie die Funktion mysql_affected_rows().
        Gruss

        tobi
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #5
          geht irgendwie immer noch nicht

          Danke für eure hinweise! Irgendwas geht aber immer noch nicht..?

          login_auth.php
          PHP-Code:
          <?php
              
          // Verbinden mit der Datenbank
              
          include ('../mysql.php');

              
          $sql "select * FROM verfasser WHERE vf_bn='$benutzername' AND vf_pw='$passwort'";
              
          mysql_query($sql);
              
              
          $num mysql_affected_rows();
              
              if(
          $num 0)
              {
              
          session_start();
              
          $_SESSION['benutzername'];
              
          $_SESSION['passwort'];
              
          header("location: http://www.domain.com/menu.php");
              }    
              else
              {
              
          header("location: http://www.domain.com/login.php");
              }
              
              
          ?>
          menu.php
          PHP-Code:
          <?php
              session_start
          ();
              if (isset(
          $_SESSION['benutzername']))
              {
              }
              else
              {
              
          header("location: http://www.domain.com/login.php");
              exit;
              }
          ?>
          ich werde einfach immer wieder beim menu zurück zum login geführt!

          Was habe ich noch falsch?

          Thanks

          php123

          Kommentar


          • #6
            Code:
            $_SESSION['benutzername'];
            Wieso setzt du denn die Variable nicht mit nem Wert?

            Kommentar


            • #7
              bzw. wirst du denn überhaupt zum Menü weitergeleitet??

              Kommentar


              • #8
                Ja das klappt!

                Kommentar


                • #9
                  Was klappt?

                  Alles oder die Weiterleitung?

                  Kommentar


                  • #10
                    Nein, nur die weiterleitung!!

                    Kommentar


                    • #11
                      Dann setz doch die Variablen mal.

                      PHP-Code:
                      <?php

                      $_SESSION
                      ['benutzername'] = 1;
                      $_SESSION['passwort'] = 1;

                      ?>

                      Kommentar


                      • #12
                        Yeah sucks

                        Yeah mate!!

                        Ich verstehs jetzt natürlich auch warums nicht lief..!

                        thanks a lot

                        php123

                        Kommentar

                        Lädt...
                        X