tutorials.de Buch-Aktion 05/2012
Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
NEIN
ANTWORTEN
17
ZUGRIFFE
640
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    klops klops ist offline Mitglied
    Registriert seit
    Jan 2005
    Beiträge
    22
    Hallo,

    ich brauch dringend hilfe Ich möchte mir bei meinem script (user-login script) rechte verteilen, doch ich habe null ahnung wie ich das anstellen soll. hab schon nach tutorials gesucht aber hab sie entweder nich verstanden oder sie haben nicht in mein script gepasst.
    ich habe mir das so ungefähr so vorgestellt in meiner datenbank habe ich
    tabelle: rights From: users
    ich möchte jetzt in die tabelle rights zahlen von 1-5 reinspeichern jede zahl steht für ein recht z.B.
    1 kein recht
    2 recht zum löschen von gästebuch einträgen
    3 eintragen von news
    ....
    Nur leider weiß ich nich wie ich das anstellen soll.
    Vielleicht könnt ihr mir ein paar codes schicken oder verständliche tutorials.
    thx
     

  2. #2
    GreenRover GreenRover ist offline Rookie
    Registriert seit
    Jan 2005
    Beiträge
    8
    Hmm da breuchte man erstmal das script für um dir da weiter zuhelfen.

    Aber ich würde erstam leien sql datenbank machen mit den spalten ID user Password rechte

    diese denn beim login in einer session oder nomalen variabelee abgelegt.

    Und dann mit if($access<4) { INHALT } oder so abgefragt.
     

  3. #3
    klops klops ist offline Mitglied
    Registriert seit
    Jan 2005
    Beiträge
    22
    ja ich hab ja in meiner datenbak eine tabelle users mit den spalten ID Name Password Rechte in der Saplte 'ID' ist nun mal die benutzid in 'Name' der nick in 'Password' das password und 'Rechte' eine zahl von 1-5 gespeichert nur wie mach ich das dann wenn ich das umsetzen will der code soll der dann vllt so aussehen:
    Code :
    1
    2
    
      $sql="SELECT `Rechte` FROM `users`";
       $data=mysql_query($sql, $db);
    und weiter weiß ich dann nich mehr
     

  4. #4
    GreenRover GreenRover ist offline Rookie
    Registriert seit
    Jan 2005
    Beiträge
    8
    index.php
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    
     <?php
     
     function login_formular()
     {
     echo '<form action="' , $GLOBALS['PHP_SELF'] , '" method="POST">' , "\n";
     echo "<table>\n<tr>\n";
     echo "<td>\nUsername: \n</td>\n<td>\n<input type=\"text\" name=\"username\">\n</td>\n</tr>\n<tr>\n";
     echo "<td>\nPasswort: \n</td>\n<td>\n<input type=\"password\" name=\"password\">\n</td>\n</tr>\n<tr>\n";
     echo "<td colspawn=\"2\">\n<input type=\"submit\" name=\"login\" value=\"Anmelden\">\n</td>\n</tr>\n</table\n";
     echo "</form> \n";
     }
     
     if  (isset($request['login']))
     {
        $username=$request['username'];
        $password=$request['password'];
        mysql_select_db($db_datenbank, $db);
        $sql = mysql_query("SELECT * FROM users WHERE username='$username' AND password='$password'");
        if (mysql_num_rows($sql) > 0)
        {
            $Wert=mysql_fetch_object($sql);
        $username=$username;
        $rechte=$Wert->rechte;
        if ($_GET['show']) {inculde($_GET['show'].".php");} else {include('standart.php')}
        }
        else 
        { 
        echo "<div align=\"center\"><h1>Login fehlerhaft</h1></div> <br>\n";
        login_formular();
        }
     }
     else
     {   
     login_formular();
     }
     ?>


    standart.php
    Code :
    1
    2
    3
    4
    5
    6
    
     <?PHP
     if($access>0) { ?>  Sie haben Rechteklasse 1 oder hoeher <br><?PHP }
     if($access>1) { ?>  Sie haben Rechteklasse 2 oder hoeher <br><?PHP }
     if($access>2) { ?>  Sie haben Rechteklasse 3 oder hoeher <br><?PHP }
     if($access>4) { ?>  Sie haben Rechteklasse 5 <br><?PHP }
     ?>
     

  5. #5
    klops klops ist offline Mitglied
    Registriert seit
    Jan 2005
    Beiträge
    22
    danke schon mal ich denke das kann mir weiter helfen.
    werd das dann gleich mal ausprobieren ob ich das auf mein script anwenden kann.
     

  6. #6
    klops klops ist offline Mitglied
    Registriert seit
    Jan 2005
    Beiträge
    22
    sry aber ich hab jetzt ein wenig rumprobiert aber im code scheint ein fehler drin zu sein den ich nich beheben kann wenn ich dann die index.php aufrufen will kommt:
    Code :
    1
    2
    3
    4
    5
    
    [b]
     Parse error[/b]:  parse error, unexpected '}' in
      [b]...
      [/b]on line [b]33
       [/b]
    kann vielleicht einer den fehler beheben
    thx
     

  7. #7
    GreenRover GreenRover ist offline Rookie
    Registriert seit
    Jan 2005
    Beiträge
    8
    Code :
    1
    
    include('standart.php');

    Das Semikolon fehtlt.

    Zeichenfehler fehlt. Sowas soltest du aber alleien finden.
     

  8. #8
    klops klops ist offline Mitglied
    Registriert seit
    Jan 2005
    Beiträge
    22
    oh man hast recht das hätte ich eigentlich sofort sehen müssen nur manchmal habe ich nur augen für andere sachen aber trotzdem danke
     

  9. #9
    klops klops ist offline Mitglied
    Registriert seit
    Jan 2005
    Beiträge
    22
    tut mir leid aber ich bin schon wieder da
    ich krieg das einfach nicht gebacken mit den rechten kann mir vllt einer einen ähnlichen code zeigen oder eine ganze andere idee die rechte gut zu verwalten aber bitte nicht in binärsystem.
    thx
     

  10. #10
    GreenRover GreenRover ist offline Rookie
    Registriert seit
    Jan 2005
    Beiträge
    8
    hast du denn bis jetzt schon was wenn ja chicke es einfach.
     

  11. #11
    DeluXe DeluXe ist offline Funkjoker
    Registriert seit
    Jul 2004
    Ort
    Offenburg
    Beiträge
    847
    Hi,

    arbeite am besten mit Sessions.

    am anfang deiner Seite schreibst du erstmal

    PHP-Code:
    session_start(); 
    hin.
    Das muss in jeder Datei als erstes stehen, ausser bei includeten.

    Wenn du die Werte aus der DB ausgelesen und überprüft hast, kannst du mit
    PHP-Code:
    $_SESSION['nick'] = $row['nick'
    der Session die Werte zuweisen.
    Das wars eigentlich schon.
    Per $_SESSION['nick'] kannst du nun aufeder Seite den Nickname des Users überprüfen (was natürlich sinnfrei wäre).
    Mit den Rechten machst du es einfach genauso und überprüfst bei geschützten Bereichen ob in der Session genügend Rechte eingetragen sind.


    byez
     

  12. #12
    klops klops ist offline Mitglied
    Registriert seit
    Jan 2005
    Beiträge
    22
    also ich hab mal versuch das obige anzuwenden ich hab mir eine login.php erstellt
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    
       <form action='index.php?path=admin' method='post' class='formular'>
       <table width='100%' height='24%' border='0'>
         <tr>
        <td width='90%' height='24' align='left'>
       <input type='text' name='username' id='username' size='15' value='username'/>
        </td>
         </tr>
         <tr>
        <td height='24' align='left'>
        <input type='password' name='password' id='password' size='15' value='password'/>
        </td>
         </tr>
         <tr>
        <td align='left'><p>
        <input type='submit' name='login' value='Login'/>
       </p>
       </td>
         </tr>
       </table>
       </form>

    und dann eine admin.php
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    
        if  (isset($_POST['login']))
        {
         $username=$_POST['username'];
         $password=$_POST['password'];
       $sql = mysql_query("SELECT * FROM users WHERE username='$username' AND password='$password'");
         if (mysql_num_rows($sql) > 0)
         {
             $Wert=mysql_fetch_object($sql);
         $username=$username;
         $rechte=$Wert->rechte;
                 if(isset($_GET['site']) AND isset($admin_dateien[$_GET['site']])) {
                     include($admin_dateien[$_GET['site']]);
                    } else {
                        include "admin_menu.php";
                    }
          } else { 
         echo "<div align=\"center\"><h1>Login fehlerhaft</h1></div> <br>\n";
                        include "login.php";
         }
       
       
       
                  } else {
                        include "login.php";
                }
            }
    jetzt ist aber das problem das ich mich gar nich mehr einloggen kann
     

  13. #13
    DeluXe DeluXe ist offline Funkjoker
    Registriert seit
    Jul 2004
    Ort
    Offenburg
    Beiträge
    847
    nimm den und sag danach bescheid ob's geht, bzw. was für fehler kommen
    PHP-Code:
       $sql mysql_query("SELECT * FROM users WHERE username=\"".$username."\" AND password=\"".$password."\""); 
     

  14. #14
    klops klops ist offline Mitglied
    Registriert seit
    Jan 2005
    Beiträge
    22
    also am ergebnis hat sich nichts geändert trotzdem danke
    es ist wie vorher wenn ich meine daten also username und password eigeben habe dann sagt er :
    login fehlerhaft
    und öffnet die login.php
    das verstehe ich aber nich denn ich habe die eingaben mit der aus der datenbank 1000mal überprüft und trotzdem loggt er sich nich ein
     

  15. #15
    DeluXe DeluXe ist offline Funkjoker
    Registriert seit
    Jul 2004
    Ort
    Offenburg
    Beiträge
    847
    $_POST['login'] ist aber gesetzt?
     

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 13.01.09, 20:12
  2. Rechtesystem PHP
    Von dark-staple im Forum Coders Talk
    Antworten: 3
    Letzter Beitrag: 24.07.08, 16:01
  3. Antworten: 0
    Letzter Beitrag: 07.08.07, 18:12
  4. Antworten: 8
    Letzter Beitrag: 14.06.04, 10:37
  5. [HILFE] Brauche dringend Hilfe zum Thema $_SESSION
    Von grashnaknieswurz im Forum PHP
    Antworten: 1
    Letzter Beitrag: 19.02.04, 14:48