Seite 1 von 1

such winzige hilfe für URL in page_tail.php

Verfasst: 04.01.2003 16:27
von Siegem Metatron
Ich möch't gern eine URL erzeugen in der "Fusszeile"
Diese URL soll jedoch nur jeder sehen welcher Mitglied einer Bestimmten Benutzergruppe ist.
Die ID dieser Gruppe ist bei mir z.B.: 49

Nun gibt es ja dort bereits so eine süße "ähnliche" URL schon fast als "Vorlage"
$admin_link = ( $userdata['user_level'] == ADMIN ) ? '<a href="' . append_sid("admin/index.$phpEx") . '">' . $lang['Admin_panel'] . '</a><br /><br />' : '';
Ich dacht mir sowaqs wie :

(funktioniert natürlich so nicht)
$group1_link = ( $userdata['group_id'] == 49 ) ? '<a href="' . append_sid("mein_link.php") . '">' . $lang['mein_link'] . '</a><br /><br />' : '';
Funktioniert natürlich nicht wegen der ( $userdata['group_id'] == 49 ) abfrage.

Aber wie müsste es richtig heissen ?

Hatt jemand ein Tipp für mich ? :wink:

Verfasst: 04.01.2003 16:31
von PhilippK
Da ein User in mehreren Gruppen seien kann, wirst du dir wohl 'ne eigene SQL-Abfrage dafür nicht ersparen können...
Kurzum: mit 'ner einfachen Zeile ist es nicht getan.

Gruß, Philipp

Verfasst: 04.01.2003 17:01
von Siegem Metatron
Autsch :)

Aber Danke

Hm..ich lass mir was einfallen SQL mäßig

Verfasst: 05.01.2003 18:58
von Gast
Ich möchte ja versuchen einen Link für bestimmte Personen im Forum anzeigen zu lassen.
Nun, ich hab es mal mit ein wenig SQL versucht.

- hab die user Tabelle um eine Spalte "abcde" erweitert.
- in der Spalte eine "1" eingetragen bei benutzer die den Link sehen sollen

In der overall_footer.tpl :
<div align="center"><span class="copyright"><br />{ADMIN_LINK}<br />
abgeändert in:
<div align="center"><span class="copyright"><br />{ADMIN_LINK}<br /> {ABCDE_LINK}<br />
in der include/page_tail.php :
$admin_link = ( $userdata['user_level'] == ADMIN ) ? '<a href="' . append_sid("admin/index.$phpEx") . '">' . $lang['Admin_panel'] . '</a><br /><br />' : '';
darunter nun:
$abcde_link = ( $userdata['sbase'] == 1 ) ? '<a href="' . append_sid("abcde/index.$phpEx") . '">' . $lang['abcde_panel'] . '</a><br /><br />' : '';
in der lang_main.php ganz klar dann auch unterhalb
$lang['Admin_panel'] = "Administrations-Bereich";
dann meinen Linknamen eingefügt:
$lang['abcde_panel'] = "ABCDE-Bereich";

Jetzt müsste eigendlich schon alles funktionieren.......doch mein ABCDE Link wird bei niemanden angezeigt.

:oops: Bin ich auf der Richtigen fährte gewesen, oder waren meine Versuche völlig nutzlos.
Oder hab ich gar einen kleinen Fehler in der ausführung ?
Fragen über Fragen, ich hoffe einer von Euch hatt vielleicht ein bescheidenen Hinweiss für mich ?

Verfasst: 05.01.2003 19:11
von Siegem Metatron
:oops: der "Gast" eben war ich

Verfasst: 05.01.2003 19:33
von Pyramide
Du musst noch die PHP-Variable ($abcde_link) und die Template-Variable ({ABCDE_LINK}) verknüpfen:

Code: Alles auswählen

$template->assign_vars(array(
	'PHPBB_VERSION' => '2' . $board_config['version'],
	'TRANSLATION_INFO' => ( isset($lang['TRANSLATION_INFO']) ) ? $lang['TRANSLATION_INFO'] : '',
	'ADMIN_LINK' => $admin_link),
	'ABCDE_LINK' => $abcde_link)
);
Achte auch auf das eingefügte Komma hinter Admin_link

Verfasst: 06.01.2003 17:40
von Siegem Metatron
Danke 8) funktioniert.........jetzt schon (fast)
Zusammenfassung:

Hm....komisches Ergebniss:
Der Link wird genau bei diesen Benutzern Erzeugt. Problem, der Link ist sozusagen "unsichtbar" man kann ihn auch nicht anklicken.

Im Quelltext der fertigen HTML Seite sieht es so aus:
HTML Ausschnitt:
[quote)
<div align="center"><span class="copyright"><br /><br /> <a href="abcde/index.php"></a><br /><br /><br />
[/quote]
Hm...hier fehlt ganz klar der Text für den Link

in der overall_footer.tpl:
<div align="center"><span class="copyright"><br />{ADMIN_LINK}<br /> {abcde_LINK}<br />
Hm...Link wird also übertragen. Vielleicht ein Problem beim Erzeigen des Links.

In der page_tail.php unter $admin_link = ( $userdata....
$abcde_link = ( $userdata['abcde'] == 1 ) ? '<a href="' . append_sid("abcde/index.$phpEx") . '">' . $lang['abcde_panel'] . '</a><br /><br />' : '';
In der lang_main.php: $lang['abcde_panel'] = "abcde-Bereich";

Dein Tipp half weiter in der page_tail.php:
$template->assign_vars(array(
'PHPBB_VERSION' => '2' . $board_config['version'],
'TRANSLATION_INFO' => ( isset($lang['TRANSLATION_INFO']) ) ? $lang['TRANSLATION_INFO'] : '',
'ADMIN_LINK' => $admin_link, 'abcde_LINK' => $abcde_link)
Hm....eigendlich wollt ich nur einen Link eindfügen *g*
Ich kanns mir derzeitig nicht erklären weshalb der Link ohne Linknamen angezeigt wird, und dadurch unsichtbar wird. Vielleicht wird der Name aus der lang Datei nicht gewünscht gezogen?

Hast du oder jemand anderes vielleicht eine weitere Idee für mich ? :)

Verfasst: 06.01.2003 17:54
von Pyramide
Hast du die Variable in den Language-Dateien für alle Sprachen eingetragen?

Verfasst: 06.01.2003 18:17
von Siegem Metatron
*anKopfklatsch* beim überprüfen der Dateien auf dem Server.........
Ouuups....hatte wohl vergessen die lang_main.php auf den Server zu schieben. Konnte nicht klappen :oops:

Ich dank dir. :) :) :) Es funktioniert wunderbar 8)

Bestimmte Benutzer sehen nun im Forum nach dem einloggen einen Link. Alle anderen nicht.