Avatar-Ersatz Bild anzeigen, falls kein Avatar vorhanden

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
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.
Antworten
Benutzeravatar
~| Marc |~
Mitglied
Beiträge: 27
Registriert: 16.04.2006 15:38
Wohnort: Austria
Kontaktdaten:

Avatar-Ersatz Bild anzeigen, falls kein Avatar vorhanden

Beitrag von ~| Marc |~ »

Hey,

bin gerade dabei, ein bisschen mit phpBB herumzutüfteln und eine Funktion finde ich einfach nicht unter den PHP-Dateien.

Nämlich rufe ich über folgenden PHP-Code das Avatar ab:

Code: Alles auswählen

  // phpBB definieren
  define('IN_PHPBB', true);
  $phpbb_root_path = '/home/www/sp01_57/html/community/';
  $phpEx = substr(strrchr(__FILE__, '.'), 1);
  include($phpbb_root_path . 'common.' . $phpEx);

  // Start session management
  $user->session_begin();
  
  $avatar = $user->data['user_avatar'];
Nun ist aber mein Problem, dass manche Benutzer kein Avatar besitzen und dort ein rotes X statt einem Bild angezeigt wird. Wie kann ich nun hier, wenn keine Daten von der Datenbank abgerufen werden können, ein Ersatz-Bild einsetzen?

Mit freundlichen Grüßen,
Marc
Dave
Mitglied
Beiträge: 2085
Registriert: 25.05.2003 15:03
Wohnort: Wuppertal

Beitrag von Dave »

Hi

functions_display.php

Code: Alles auswählen

/**
* Get user avatar
*
* @param string $avatar Users assigned avatar name
* @param int $avatar_type Type of avatar
* @param string $avatar_width Width of users avatar
* @param string $avatar_height Height of users avatar
* @param string $alt Optional language string for alt tag within image, can be a language key or text
*
* @return string Avatar image
*/
function get_user_avatar($avatar, $avatar_type, $avatar_width, $avatar_height, $alt = 'USER_AVATAR')
{
	global $user, $config, $phpbb_root_path, $phpEx;

	if (empty($avatar) || !$avatar_type)
	{
		return '';
	}

	$avatar_img = '';

	switch ($avatar_type)
	{
		case AVATAR_UPLOAD:
			$avatar_img = $phpbb_root_path . "download/file.$phpEx?avatar=";
		break;

		case AVATAR_GALLERY:
			$avatar_img = $phpbb_root_path . $config['avatar_gallery_path'] . '/';
		break;
	}

	$avatar_img .= $avatar;
	return '<img src="' . $avatar_img . '" width="' . $avatar_width . '" height="' . $avatar_height . '" alt="' . ((!empty($user->lang[$alt])) ? $user->lang[$alt] : $alt) . '" />';
}

Code: Alles auswählen

$avatar = ($user->optionget('viewavatars')) ? get_user_avatar($user->data['user_avatar'], $user->data['user_avatar_type'], $user->data['user_avatar_width'], $user->data['user_avatar_height']) : '';
Das sollte dir wohl weiter helfen ;)

MfG
Dave
Benutzeravatar
~| Marc |~
Mitglied
Beiträge: 27
Registriert: 16.04.2006 15:38
Wohnort: Austria
Kontaktdaten:

Beitrag von ~| Marc |~ »

Vielen Dank, genau das, was ich gesucht habe :)

Mit freundlichen Grüßen,
Marc
Antworten

Zurück zu „[3.0.x] Mods in Entwicklung“