Seite 1 von 2

(gelöst) Fehler bei Rechteabfrage eingebaut??

Verfasst: 21.07.2008 10:19
von Overhead
Hallo zusammen,

habe ich hier einen Fehler gemacht?

Code: Alles auswählen

// Can this user view articles?
		if (!$auth->acl_gets('u_express'))
		{
			if ($user->data['user_id'] != ANONYMOUS)
			{
				trigger_error('NO_VIEW_ARTICLES');
			}

			login_box('', ((isset($user->lang['LOGIN_EXPLAIN_' . strtoupper($mode)])) ? $user->lang['LOGIN_EXPLAIN_' . strtoupper($mode)] : $user->lang['LOGIN_EXPLAIN_LIST']));
		}
	break;
}
denn nun kann ich selbst als Admin den Beitrag nicht mehr aufrufen - es kommt dann immer die Anzeige das ich keine Rechte hätte.... grml...

hat mir mal jemand einen Tipp wie ich das korrekt lösen könnte?

cu

Overhead

Verfasst: 21.07.2008 11:56
von PhilippK
Mit

Code: Alles auswählen

if ($user->data['user_id'] != ANONYMOUS)
sagst du doch, dass er bei allen Benutzern außer dem Gastkonto abbrechen soll...

Gruß, Philipp

Verfasst: 21.07.2008 12:13
von Overhead
@ PhillipK

ups und dabei wollte ich eigentlich etwas anderes erreichen... die eingeloogten sollten das sehen und der Gast eben nicht. :(

Wie müsste es denn richitg heissen?

cu Overhead

Verfasst: 21.07.2008 12:38
von Mahony
Hallo
Dann mach das ! mal weg.

Code: Alles auswählen

if ($user->data['user_id'] = ANONYMOUS)
         {
            trigger_error('NO_VIEW_ARTICLES');
         } 
Bedeutet: Wenn User = Gast (ANONYMOUS) dann gebe die Meldung (deine Fehlermeldung) aus.


Grüße: Mahony

Verfasst: 21.07.2008 12:41
von PhilippK
Du solltest aber zwei == verwenden:

Code: Alles auswählen

if ($user->data['user_id'] == ANONYMOUS)
Andernfalls würdest du eine Wertzuweisung machen.

Gruß, Philipp

Verfasst: 21.07.2008 12:44
von Mahony
Hallo
Ups :oops:
Ja stimmt. PhilippK hat natürlich recht (immer diese Flüchtigkeitsfehler :oops: )





Grüße: Mahony

Verfasst: 21.07.2008 13:23
von Overhead
@ Mahoney + PhillipK

danke für den Tipp, aber jetzt kommt immer das Loginfeld mit Username und Passwort auch wenn ich bereits eingeloggt bin.. und wenn ich Username und Passwort eingebe springt er wieder an den Anfang zurück.... mhm ... da ist noch ein Wurm dirn, denn normalerweise sollte er ja den Trigger zum einloggen garnicht bringen wenn ich aktiv bin und dadurch je eine Berechtigung für den Beiträg hätte... ???

cu

Overhead

Re: Fehler bei Rechteabfrage eingebaut??

Verfasst: 21.07.2008 13:25
von nickvergessen

Code: Alles auswählen

		// Can this user view articles?
		if (!$auth->acl_gets('u_express'))
		{
			//wenn ein User hier landet hat er keien Rechte für u_express
			if ($user->data['user_id'] != ANONYMOUS)
			{
				//wenn der User kein Gast ist, bekommt er die Meldung, dass er den Artikel nicht lesen darf
				trigger_error('NO_VIEW_ARTICLES');
			}
			else
			{
				//wenn er gast ist, darf er sich nun einloggen
				login_box('', ((isset($user->lang['LOGIN_EXPLAIN_' . strtoupper($mode)])) ? $user->lang['LOGIN_EXPLAIN_' . strtoupper($mode)] : $user->lang['LOGIN_EXPLAIN_LIST']));
			}
		}

Verfasst: 21.07.2008 13:41
von Overhead
@ Nickvergessen

jetzt kommt ein Pharse Error unexpected mit einem Verweis auf die letzte Zeile in der aber nur
steht. Kann das sein, dass in Deiner Zeile eine ) oder } fehlt??

cu Overhead

Verfasst: 21.07.2008 13:45
von nickvergessen
ich hab das

Code: Alles auswählen

break;
}
aus deinem beitrag unterschlagen