Problem mit Header und get_user_avatar!

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Benutzeravatar
alexanderzwei
Mitglied
Beiträge: 173
Registriert: 04.11.2004 17:06
Wohnort: Oberursel (Taunus)
Kontaktdaten:

Problem mit Header und get_user_avatar!

Beitrag von alexanderzwei »

Hallo zusammen,

ich programmiere gerade für ein phpBB3 Board eine Userbox in dem alle Infos zum User im Header angezeigt werden. Also Username, PNs, ACP und alles andere wichtige.

Ich würde dazu gerne noch das Avatar des jeweiligen Benutzers einfügen.

Dazu habe ich im template "overall_header.html" folgendes stehen:

Code: Alles auswählen

<td width="140" rowspan="2" align="left"><!-- IF AVATAR -->{AVATAR}<!-- ELSE --><img src="{T_THEME_PATH}/images/no_avatar.gif" alt="" /><!-- ENDIF --></td>
                    <td width="253">
Dann habe ich mir aus der ucp_profile.php folgendes rausgesucht:

Code: Alles auswählen

$template->assign_vars(array(
					'AVATAR'		=> get_user_avatar($user->data['user_avatar'], $user->data['user_avatar_type'], $user->data['user_avatar_width'], $user->data['user_avatar_height'])
				));
Füge ich diesen Code unter dem page_header in der index.php ein, funktioniert auch alles, allerdings muss ich das auch bei allen anderen Dateien im root Verzeichnis tun. (außer bei common, config, cron und style.php).

Bei einigen funktioniert das auch, bei anderen, sowie auch bei ucp.php kriege ich eine fehlermeldung, sobald ich eine Unterseite aufrufe. (bei ucp.php z.B. das Tab "Profil").

Jetzt meine Frage:
Wie kriege ich es hin, das ich im Header das Avatar auf allen Seiten angezeigt kriege?

Nachtrag: Wie krieg ich das ganze auch mit dem Benutzernamen hin?

Ich würde mich um eine Antwort freuen.

Vielen Dank schon einmal.
Vielleicht ist das Leben ja ein Integer. Wenn man negativ genug denkt, wirds irgendwann positiv..
Benutzeravatar
alexanderzwei
Mitglied
Beiträge: 173
Registriert: 04.11.2004 17:06
Wohnort: Oberursel (Taunus)
Kontaktdaten:

Beitrag von alexanderzwei »

Sorry für Doppelpost,
mache ich wirklich ungerne, aber kann mir wirklich keiner helfen?

Es ist wichtig, das ich das ganze bald fertig programmiert habe, da wir auf das neue Board umziehen wollen von einem Board, das bei foren-city gehostet wird.
Da dies bald passieren kann, muss ich fertig werden.
Und es steht noch ein wenig Arbeit an, allerdings komme ich nicht weiter, wenn ich das Problem nicht behoben habe.

Wenn mir jemand helfen kann, bitte ich darum, sich bei mir zu melden.

Ich bedanke mich schon einmal im voraus und hoffe das sich mir einer erbarmt. ;)
Vielleicht ist das Leben ja ein Integer. Wenn man negativ genug denkt, wirds irgendwann positiv..
Benutzeravatar
easygo
Mitglied
Beiträge: 2170
Registriert: 03.09.2004 13:45
Kontaktdaten:

Re: Problem mit Header und get_user_avatar!

Beitrag von easygo »

alexanderzwei hat geschrieben:Dann habe ich mir aus der ucp_profile.php folgendes rausgesucht:

Code: Alles auswählen

$template->assign_vars(array(
					'AVATAR'		=> get_user_avatar($user->data['user_avatar'], $user->data['user_avatar_type'], $user->data['user_avatar_width'], $user->data['user_avatar_height'])
				));
Würd die Zeile in die functions.php setzen und das assign umbenennen (also statt AVATAR z.B. USERBOX_AVATAR),
Na ja, und der beste Platz für dein Vorhaben ist vermutlich das schon vorhandene array:

Code: Alles auswählen

	// The following assigns all _common_ variables that may be used at any point in a template.
	$template->assign_vars(array(
Benutzeravatar
alexanderzwei
Mitglied
Beiträge: 173
Registriert: 04.11.2004 17:06
Wohnort: Oberursel (Taunus)
Kontaktdaten:

Re: Problem mit Header und get_user_avatar!

Beitrag von alexanderzwei »

easygo hat geschrieben:
alexanderzwei hat geschrieben:Dann habe ich mir aus der ucp_profile.php folgendes rausgesucht:

Code: Alles auswählen

$template->assign_vars(array(
					'AVATAR'		=> get_user_avatar($user->data['user_avatar'], $user->data['user_avatar_type'], $user->data['user_avatar_width'], $user->data['user_avatar_height'])
				));
Würd die Zeile in die functions.php setzen und das assign umbenennen (also statt AVATAR z.B. USERBOX_AVATAR),
Na ja, und der beste Platz für dein Vorhaben ist vermutlich das schon vorhandene array:

Code: Alles auswählen

	// The following assigns all _common_ variables that may be used at any point in a template.
	$template->assign_vars(array(
Okay, danke für deinen Tipp.

Ich probier das ganze mal aus.^^
Melde mich dann gleich wieder.

EDIT: Auf der Startseite funktioniert das alles auch, allerdings nicht auf anderen Seiten.

Code: Alles auswählen

'USERBOX_USERNAME'	  => $user->data['username'],
		'WELCOME_BACK'		  => 'Willkommen zurück,',
hingegen funktioniert überall hervorrangend.

Das ganze sieht jetzt so aus: (functions.php)

Code: Alles auswählen

$template->assign_vars(array(
	
		// Userbox Start
		
		'USERBOX_AVATAR'      => get_user_avatar($user->data['user_avatar'], $user->data['user_avatar_type'], $user->data['user_avatar_width'], $user->data['user_avatar_height']),
		'USERBOX_USERNAME'	  => $user->data['username'],
		'WELCOME_BACK'		  => 'Willkommen zurück,',
		
		// Userbox End

...
overall_header.html:

Code: Alles auswählen

<!-- IF AVATAR -->{USERBOX_AVATAR}<!-- ELSE --><img src="{T_THEME_PATH}/images/no_avatar.gif" alt="" /><!-- ENDIF -->
EDIT2: Nehme ich das IF aus dem Template raus, funktioniert es überall. Wieso das?

Weiß jemand, wieso das Avatar nur auf der Startseite geht?
Vielleicht ist das Leben ja ein Integer. Wenn man negativ genug denkt, wirds irgendwann positiv..
Benutzeravatar
easygo
Mitglied
Beiträge: 2170
Registriert: 03.09.2004 13:45
Kontaktdaten:

Re: Problem mit Header und get_user_avatar!

Beitrag von easygo »

alexanderzwei hat geschrieben:overall_header.html:

Code: Alles auswählen

<!-- IF AVATAR -->{USERBOX_AVATAR}<!-- ELSE --><img src="{T_THEME_PATH}/images/no_avatar.gif" alt="" /><!-- ENDIF -->
EDIT2: Nehme ich das IF aus dem Template raus, funktioniert es überall. Wieso das?
Muss jetzt natürlich heißen ::

Code: Alles auswählen

<!-- IF USERBOX_AVATAR -->{USERBOX_AVATAR}<!-- ELSE --><img src="{T_THEME_PATH}/images/no_avatar.gif" alt="" /><!-- ENDIF -->
Benutzeravatar
alexanderzwei
Mitglied
Beiträge: 173
Registriert: 04.11.2004 17:06
Wohnort: Oberursel (Taunus)
Kontaktdaten:

Re: Problem mit Header und get_user_avatar!

Beitrag von alexanderzwei »

easygo hat geschrieben:
alexanderzwei hat geschrieben:overall_header.html:

Code: Alles auswählen

<!-- IF AVATAR -->{USERBOX_AVATAR}<!-- ELSE --><img src="{T_THEME_PATH}/images/no_avatar.gif" alt="" /><!-- ENDIF -->
EDIT2: Nehme ich das IF aus dem Template raus, funktioniert es überall. Wieso das?
Muss jetzt natürlich heißen ::

Code: Alles auswählen

<!-- IF USERBOX_AVATAR -->{USERBOX_AVATAR}<!-- ELSE --><img src="{T_THEME_PATH}/images/no_avatar.gif" alt="" /><!-- ENDIF -->
Ach lol.
Ich bin ja auch blöd. :D

Solche Fehler kann ich hassen.

Danke nochmals. Ich bin gerade am weiterprogrammieren.

Allerdings ein neues Problem.

Auf manchen Seiten, wie z.B. die Erweiterte Suche, oder auch im UCP unter "Profil" folgender Fehler:

Fatal error: Call to undefined function get_user_avatar() in /var/www/web75/html/includes/functions.php on line 3476
Vielleicht ist das Leben ja ein Integer. Wenn man negativ genug denkt, wirds irgendwann positiv..
Benutzeravatar
easygo
Mitglied
Beiträge: 2170
Registriert: 03.09.2004 13:45
Kontaktdaten:

Re: Problem mit Header und get_user_avatar!

Beitrag von easygo »

alexanderzwei hat geschrieben:Auf manchen Seiten, wie z.B. die Erweiterte Suche, oder auch im UCP unter "Profil" folgender Fehler:

Fatal error: Call to undefined function get_user_avatar() in /var/www/web75/html/includes/functions.php on line 3476
UCP würd ich dann erstmal komplett ausklammern (mangels Ideen)

Als Beispiel so ::

<!-- IF not S_IN_UCP -->

...

<!-- ENDIF -->

und der search.php die Funktion an die Hand geben.

Code: Alles auswählen

include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
direkt unter ::

Code: Alles auswählen

include($phpbb_root_path . 'common.' . $phpEx);
____________________

Aber na ja, am besten und einfachsten wärs wohl, die common.php zu erweitern. Such mal dort nach ::

Code: Alles auswählen

require($phpbb_root_path . 'includes/functions_content.' . $phpEx);
und setz die folgende Zeile drunter ::

Code: Alles auswählen

require($phpbb_root_path . 'includes/functions_display.' . $phpEx);
Benutzeravatar
alexanderzwei
Mitglied
Beiträge: 173
Registriert: 04.11.2004 17:06
Wohnort: Oberursel (Taunus)
Kontaktdaten:

Beitrag von alexanderzwei »

Danke für die Antwort.

hab das in die search.php eingefügt und es geht.

Im UCP fehlte die Zeile.

Ich habe diese jetzt auch hinzugefügt, und es geht überall außer bei den Privaten Nachrichten.
Das mit der common.php war gut gedacht, aber ich schätze, das funktioniert nicht.

In beiden Fällen:
Fatal error: Cannot redeclare display_forums() (previously declared in /var/www/web75/html/includes/functions_display.php:22) in /var/www/web75/html/includes/functions_display.php on line 459

Da der Persönliche Bereich so oder so das beinhaltet, was in der Userbox steht, denke ich mal, das ich die Userbox im UCP deaktiviere.

EDIT: Auch wenn ich die Userbox deaktiviere, kommt der Fehler

Fatal error: Call to undefined function get_user_avatar() in /var/www/web75/html/includes/functions.php on line 3476

trotzdem.
Vielleicht ist das Leben ja ein Integer. Wenn man negativ genug denkt, wirds irgendwann positiv..
Benutzeravatar
igorw
Mitglied
Beiträge: 107
Registriert: 02.08.2008 13:04
Wohnort: Winterthur

Beitrag von igorw »

Versuch das:

Code: Alles auswählen

require($phpbb_root_path . 'includes/functions_display.' . $phpEx);
Mit folgendem zu ersetzen:

Code: Alles auswählen

require_once($phpbb_root_path . 'includes/functions_display.' . $phpEx);
Benutzeravatar
alexanderzwei
Mitglied
Beiträge: 173
Registriert: 04.11.2004 17:06
Wohnort: Oberursel (Taunus)
Kontaktdaten:

Beitrag von alexanderzwei »

eviL<3 hat geschrieben:Versuch das:

Code: Alles auswählen

require($phpbb_root_path . 'includes/functions_display.' . $phpEx);
Mit folgendem zu ersetzen:

Code: Alles auswählen

require_once($phpbb_root_path . 'includes/functions_display.' . $phpEx);
Auch das scheint leider nicht zu klappen.

Der Fehler ist nach wie vor..
Vielleicht ist das Leben ja ein Integer. Wenn man negativ genug denkt, wirds irgendwann positiv..
Antworten

Zurück zu „[3.0.x] Mod Support“