Nur einloggen, wenn Rang Admin oder Moderator ist :-\

Kalma

Erfahrenes Mitglied
Hey Leute,

hab mal wieder an meiner Seite gebaut, und wollte grade das Admin-Menü anfangen, doch dann viel mir auf, das ja nur "admin" und "moderator" ins admin-menü dürfen.
hab lange probiert und so, aber es wollte einfach nicht .

Hier mein Code:
PHP:
<?php
	//posten
	$nickname		= $_POST['nickname'];
	$passwort		= $_POST['passwort'];
	$md5pw			= md5($passwort);
	
	$Query = "SELECT
							*
						FROM
							user
						WHERE
							`nickname`='$nickname'
						AND 
							`passwort`='$md5pw'
						LIMIT
							1";
	$Result = mysql_query($Query);
	
			if (mysql_num_rows($Result) > 0)
				{
					$dat = mysql_fetch_array($Result);
					
					$_SESSION["user_id"]		= "".$dat['id']."";
					$_SESSION["nickname"]		= "".$dat['nickname']."";
					$_SESSION["rang"]				= "".$dat['rang']."";
			
					$date = date("d.m.Y");
					$Up = mysql_query("UPDATE user SET `lastlogin`='$date' WHERE `id`=".$_SESSION["user_id"]."");
			
					header ("location: ?section=news");
				}
			else
				{
					header ("location: ?fehler=1");
				}
?>

Dem ein oder anderem wirds auffallen, das es das Login-Tutorial war, was hier vorliegt^^..

Naja, tut ja jetzt nix zur Sache. Wie baue ich da nun die Funktion ein, das man nur eingeloggt wird, wenn der Rang "Admin" oder "Moderator" ist.


Hoffe ihr helft mir ;)

David
 
da musst du dein Query für die SQL erweitern :
PHP:
    $Query = "SELECT
                            *
                        FROM
                            user
                        WHERE
                            `nickname`='$nickname'
                        AND 
                            `passwort`='$md5pw'
                        AND 
                            `rang`='admin' 
                        OR
                            `rang`='mod' 
                        LIMIT
                            1";

Oder später abfragen :
PHP:
            if (mysql_num_rows($Result) > 0)
                {
                    $dat = mysql_fetch_array($Result);

                    if (($dat["rang"]!="admin") OR ($dat["rang"]!="mod")) header ("location: ?fehler=1");
                    
                    $_SESSION["user_id"]        ="".$dat['id']."";
                    $_SESSION["nickname"]        = "".$dat['nickname']."";
                    $_SESSION["rang"]                = "".$dat['rang']."";


            
                    $date = date("d.m.Y");
                    $Up = mysql_query("UPDATE user SET `lastlogin`='$date' WHERE `id`=".$_SESSION["user_id"]."");
            
                    header ("location: ?section=news");
                }
            else
                {
                    header ("location: ?fehler=1");
                }
 
Zuletzt bearbeitet:
Zurück