2016-05-11 5 views
0

Ich baue gerade eine Website mit einem Anmeldeformular. Abhängig davon, welche Rolle dieser Benutzer hat, muss eine Navigationsleiste entsprechend angezeigt werden.Ein bestimmtes Feld aus einer Tabelle in einer Datenbank abrufen und in Sitzungen verwenden. Php

Beispiel: Jemand, der sich noch nicht eingeloggt hat, wird einen "Login" Link haben. Wenn sich jemand eingeloggt hat und kein Admin ist, wird eine andere Navigationsleiste angezeigt.

Alle Anmeldedaten werden in einer Datenbank gespeichert und dies muss mit Sitzungen geschehen, da der Benutzer auf eine andere Seite gesendet wird.

Irgendwelche Ideen?

-Code bis jetzt:

$query = "SELECT count(*) FROM tbl_users 
      WHERE username = '$username' AND password = '$pass'"; 

$result = mysqli_query($connection, $query) 
     or die("Error in query: ". mysqli_error($connection)); 

$row = mysqli_fetch_row($result); 
$counter = $row[0]; 

if($counter > 0) 
{ 
    session_start(); 
    $_SESSION['user']= $username; 
    $_SESSION['role'] = $row['role']; 
+0

Willkommen bei Stackoverflow, Sie müssen immer Probe des Codes, die Sie versucht haben und was Fehler, den Sie haben, wir einen Code für Sie nicht schreiben können, müssen Sie zuerst Ihr selbst versuchen und dann hier fragen, ob Du hast irgendein Problem. –

+0

Ich habe vergessen, @Arsh hinzuzufügen Danke :) – Chanter

Antwort

1

eine etwas vage Frage, aber überprüfen Sie Ihre Rolle.

if($_SESSION['role']=='admin') 
    echo 'I am admin'; 
elseif($_SESSION['role']=='customer') 
    echo 'I am customer'; 
else 
    echo 'No valid role/not logged in'; 
+0

Ich habe diesen Code verwendet, aber nachdem ich mich angemeldet habe und auf eine andere Seite umgeleitet habe, wird kein Menü geladen. Dies ist der Code, den ich auf der Seite habe, nachdem ich mich eingeloggt habe Chanter

Verwandte Themen