2016-05-06 19 views
0

Ich habe eine Website, die von Benutzern (www.mysite.com/user/home.php) und einem Admin (www.mysite.com/admin/) zugreifen kann Administrator/index.php).Wie bekomme ich die aktuelle URL der Seite [0]

Ich habe eine Codezeile, die automatisch einen Benutzer abmeldet (wie die Sitzung abläuft), wenn Bedingung erfüllt. Admin wird leider auch ausgeloggt. wie kann ich die Website-URL erhält

$_SERVER['REQUEST_URl'] 

mit, so dass meine Codezeile nur für die Benutzer-Seiten und nicht für Admin-Seiten „/ admin/Administrator“ ausgeführt wird. So etwas wie ..

if(the website url != "www.mysite.com/admin/administrator/"){ //run the code here} 
+1

Sollten Sie nicht über eine Sitzungsvariable verfügen, die angibt, ob der Benutzer ein Administrator ist oder nicht? – Musa

+0

Einverstanden. Sie sollten eine Sitzung verwenden, um einen angemeldeten Benutzer als Administrator zu identifizieren, nachdem er sich erfolgreich authentifiziert hat. Ihr Admin-Teil der Website muss nur prüfen, ob der Benutzer ein Administrator ist, andernfalls leiten Sie sie um. – Crackertastic

+0

Vielen Dank! Ich hab es jetzt. Ich habe nur eine Admin-Session-Variable von Admins, wenn sie sich eingeloggt. – xkevin

Antwort

0

können Sie verwenden, um die strpos Funktion, die verwendet wird, um das Auftreten einer Zeichenfolge innerhalb anderer zu finden:

if (strpos($_SERVER['REQUEST_URl'], 'admin/administrator') !== false) { 
    echo 'admin dir'; 
} 

Beachten Sie, dass die Verwendung von !== false ist gewollt; strpos gibt entweder den Offset zurück, bei dem die Nadelkette in der Heuhaufenkette beginnt, oder den booleschen Wert false, wenn die Nadel nicht gefunden wird.

+0

Vielen Dank für diese .. – xkevin

0

Ich füge nur eine Admin-Session-Variable zu allen Admins hinzu, die sich auf der Admin-Seite eingeloggt haben. Dadurch kann ich wissen, ob der Admin auf der Seite angemeldet ist oder nicht.

if($_SESSION['is_admin'] != 1){//the code here} 

Vielen Dank für die Hilfe Jungs!

Verwandte Themen