Dieser Benutzer existiert nicht!

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

  • #16
    wie hat hier mal jemand gesagt?

    Kaum macht man's richtig, schon funktioniert es auch
    Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
    Schön - etwas Geschichte kann ja nicht schaden.
    Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

    Kommentar


    • #17
      Naja... so richtig funzt's leider nicht!

      Irgendwie verschluckt mir die Seite den Username!

      Also wenn man sich als "test" einloggt (PW: test) hat man UserLevel 3; d.h. "alle rechte".

      klickt man dann auf LVL3 Test wird aus dem User "test" der User "t"!

      Verantwortlich meines Erachtens die userlvl.php:
      PHP-Code:
      <?php

      $ident 
      $_COOKIE['PHPSESSID'];
      $username $_SESSION['username']['ident'];
      echo (
      $_SESSION['username']['ident']);

      if(isset(
      $username)) {

          
      // Verbinden mit DB
          
      if ( empty($cfgServerPort) ) {
              
      mysql_connect($cfgServerHost$cfgServerUser$cfgServerPassword)
              or die(
      $strNoConnection);
          } else {
              
      mysql_connect($cfgServerHost ":" $cfgServerPort$cfgServerUser$cfgServerPassword)
              or die(
      $strNoConnection);
          }

          
      $levelQuery mysql($cfgDbDatabase"SELECT userlevel FROM $cfgDbTableUsers WHERE $cfgDbLoginfield = '$username'")
          or die(
      $strNoDatabase);

          
      $userLVL mysql_fetch_array($levelQuery);

          echo (
      $userLVL);

          
      // Ist der User berechtigt?
          
      if ($userLVL "0" || $userLVL $requiredUserLevel) {
              echo 
      "Sie sind nicht berechtigt diese Seite anzuzeigen!";
          }

      } else {
          echo 
      "Sie sind nicht eingeloggt! Zugriff verweigert!";
      }
      ?>
      Diese wird inkludiert und sollte eigentlich nur den userlevel abfragen, bzw. nen error ausgeben.

      Pls help nochmal!
      WHILE (!$asleep) { $sheep++; }

      Kommentar


      • #18
        Hi,
        PHP-Code:
        if ($userLVL "0" || $userLVL $requiredUserLevel) {
                echo 
        "Sie sind nicht berechtigt diese Seite anzuzeigen!";
            } 
        =>

        PHP-Code:
        if ($userLVL == || $userLVL $requiredUserLevel) {
                echo 
        "Sie sind nicht berechtigt diese Seite anzuzeigen!";
            } 
        Gruß Thomas

        €: Anführungszeichen um 0 entfernt
        Zuletzt geändert von Alrik; 28.04.2006, 18:19.

        Kommentar


        • #19
          Danke Thomas! =)

          Das Problem mit dem "Verschlucken" bleibt jedoch bestehen!
          WHILE (!$asleep) { $sheep++; }

          Kommentar


          • #20
            PHP-Code:
            if ($userLVL[0] == || $userLVL $requiredUserLevel) {
                    echo 
            "Sie sind nicht berechtigt diese Seite anzuzeigen!";
                } 
            Userlvl ist doch ein Array!?

            Kommentar


            • #21
              Nö! Eigentlich nicht! $userLVL ist ledigleich ein integer zwischen 0 und 3.

              PHP-Code:
              $userLVL mysql_fetch_array($levelQuery); 
              hab ich nur zwecks Test verwendet, weil "mysql_fetch_assoc" nicht funktionert hat.
              WHILE (!$asleep) { $sheep++; }

              Kommentar


              • #22
                mysql_fetch_array, der Name sagt es doch. Du bekommst ein Array und musst es auch entsprechend auslesen.
                Entweder über den Index oder dem Schlüssel ansprechen.

                Kommentar


                • #23
                  ok; Bin jetzt schon so weit, dass nichts mehr verschluckt wird.

                  Alrik's letzten Post durchschau ich nicht! Wie soll ich das Array richtig auslesen, wenn's garkeines ist? Ich meine den Wert "userlevel" muss man doch irgendwie raus bekommen!?

                  Aktueller Code:
                  PHP-Code:
                  <?php

                  if(isset($username)) {

                      
                  // Verbinden mit DB
                      
                  if ( empty($cfgServerPort) ) {
                          
                  mysql_connect($cfgServerHost$cfgServerUser$cfgServerPassword)
                          or die(
                  $strNoConnection);
                      } else {
                          
                  mysql_connect($cfgServerHost ":" $cfgServerPort$cfgServerUser$cfgServerPassword)
                          or die(
                  $strNoConnection);
                      }

                      
                  $levelQuery mysql($cfgDbDatabase"SELECT userlevel FROM $cfgDbTableUsers WHERE $cfgDbLoginfield = '$username'")
                      or die(
                  $strNoDatabase);

                      
                  $userLVL mysql_fetch_assoc($levelQuery);

                      echo (
                  $userLVL);

                      
                  // Ist der User berechtigt?
                      
                  if ($userLVL[0] == || $userLVL $requiredUserLevel) {
                          echo 
                  "Sie sind nicht berechtigt diese Seite anzuzeigen!";
                      }

                  } else {
                      echo 
                  "Sie sind nicht eingeloggt! Zugriff verweigert!";
                  }
                  ?>
                  WHILE (!$asleep) { $sheep++; }

                  Kommentar


                  • #24
                    PHP-Code:
                     $userLVL mysql_fetch_assoc($levelQuery); 
                    Hier bekommst du ein Array von deinem Query. In deinem Fall ein assoziatives Array, welches du über $userLVL['schlüssel'] ansprechen musst.

                    Der Schlüssel entspricht dabei dem Feldname der Tabelle (z.B. id,name,zeit).

                    $userLVL['userlevel'] sollte dir dein Level ausgeben.

                    Kommentar


                    • #25
                      hmm... bekomm das noch immer nicht gebacken! Auch nicht wenn ich's wie Alrik meinte auslesen will! Langsam verzweifle ich!

                      PHP-Code:
                      <?php

                      if(isset($username)) {

                          
                      // Verbinden mit DB
                          
                      if ( empty($cfgServerPort) ) {
                              
                      mysql_connect($cfgServerHost$cfgServerUser$cfgServerPassword)
                              or die(
                      $strNoConnection);
                          } else {
                              
                      mysql_connect($cfgServerHost ":" $cfgServerPort$cfgServerUser$cfgServerPassword)
                              or die(
                      $strNoConnection);
                          }


                          
                      $levelQuery mysql($cfgDbDatabase"SELECT userlevel FROM $cfgDbTableUsers WHERE $cfgDbLoginfield = '$username'")
                          or die(
                      $strNoDatabase);

                          
                      $userLVL mysql_fetch_assoc($levelQuery);
                          
                      $userLevel $userLVL[$cfgDbLoginfield];

                          echo (
                      $userLevel);

                          
                      // Ist der User berechtigt?
                          
                      if ($userLevel == || $userLevel $requiredUserLevel) {
                          echo 
                      "Sie sind nicht berechtigt diese Seite anzuzeigen!";
                          }
                      } else {
                          echo 
                      "Sie sind nicht eingeloggt! Zugriff verweigert!";
                      }
                      ?>
                      WHILE (!$asleep) { $sheep++; }

                      Kommentar


                      • #26
                        PHP-Code:
                        $userLVL mysql_fetch_assoc($levelQuery); 
                        Setze danach mal ein print_r($userLVL);
                        I don't believe in rebirth. Actually, I never did in my whole lives.

                        Kommentar


                        • #27
                          Original geschrieben von nichtsooft
                          hmm... bekomm das noch immer nicht gebacken! Auch nicht wenn ich's wie Alrik meinte auslesen will! Langsam verzweifle ich!

                          PHP-Code:
                          <?php

                          if(isset($username)) {

                              
                          // Verbinden mit DB
                              
                          if ( empty($cfgServerPort) ) {
                                  
                          mysql_connect($cfgServerHost$cfgServerUser$cfgServerPassword)
                                  or die(
                          $strNoConnection);
                              } else {
                                  
                          mysql_connect($cfgServerHost ":" $cfgServerPort$cfgServerUser$cfgServerPassword)
                                  or die(
                          $strNoConnection);
                              }


                              
                          $levelQuery mysql($cfgDbDatabase"SELECT userlevel FROM $cfgDbTableUsers WHERE $cfgDbLoginfield = '$username'")
                              or die(
                          $strNoDatabase);

                              
                          $userLVL mysql_fetch_assoc($levelQuery);
                              
                          $userLevel $userLVL[$cfgDbLoginfield];

                              echo 
                          $userLevel['userlevel'];

                              
                          // Ist der User berechtigt?
                              
                          if ($userLevel['userlevel'] == || $userLevel['userlevel'] < $requiredUserLevel) {
                              echo 
                          "Sie sind nicht berechtigt diese Seite anzuzeigen!";
                              }
                          } else {
                              echo 
                          "Sie sind nicht eingeloggt! Zugriff verweigert!";
                          }
                          ?>

                          Kommentar


                          • #28
                            Feinstens! Es läuft! ^^

                            Musste zwar noch
                            PHP-Code:
                                $userLVL mysql_fetch_assoc($levelQuery);
                                
                            $userLevel $userLVL[$cfgDbLoginfield]; 
                            ändern aber jetzt klappt's!

                            Danke Alrik! Bin Froh das es "PHP-Götter" wie dich und Quetschi gibt!
                            WHILE (!$asleep) { $sheep++; }

                            Kommentar

                            Lädt...
                            X