[gelöst] Benutzerdefinierte Profilfelder ausgeben?

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
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
rumor
Mitglied
Beiträge: 3
Registriert: 19.06.2009 16:46

[gelöst] Benutzerdefinierte Profilfelder ausgeben?

Beitrag von rumor »

Hallo, ich habe über die Suchfunktion keine Lösung für mein Problem gefunden. Ich habe keine Ahnung von diesem SQL Zeug und hab auch nur eine kleine Frage, die man mir bestimmt auch schnell beantworten kann..

Ich habe mein phpBB3 Forum "mit meiner Seite verbunden", keine Ahnung, wie ich es ausdrücken soll xD
Nun möchte ich auf meiner Seite die benutzerdefinierten Profilfelder anzeigen lassen, was ich nicht hinbekomme.

Beim Username funktioniert es ja so:

Code: Alles auswählen

$user->data['username']
oder bei der UserID:

Code: Alles auswählen

$user->data['user_id']
nun habe ich es für ein benutzerdefiniertes Profilfeld namens "ign" so versucht:

Code: Alles auswählen

$phpbb_profile_fields_data->data['pf_ign']
auf diese Weise wird auf der Seite aber nichts ausgegeben..
Ich vermute, dass es daran liegt, dass ich die user_id irgendwie mit einbringen muss, so wie es in der Tabelle aussieht,
aber wie gesagt, habe ich ja keine Ahnung davon.. Ich bitte um Hilfe :O

Auf jeden Fall schonmal danke..
Zuletzt geändert von rumor am 06.05.2010 15:36, insgesamt 1-mal geändert.
Benutzeravatar
Frank1604
Ehemaliges Teammitglied
Beiträge: 2106
Registriert: 07.11.2007 09:25
Wohnort: Einhausen
Kontaktdaten:

Re: Benutzerdefinierte Profilfelder ausgeben?

Beitrag von Frank1604 »

Guten Morgen,

Das sollte dann so hier gehen:

Code: Alles auswählen

$user->get_profile_fields($user->data['user_id']);
$ign = $user->profile_fields['pf_ign'] 
Gruß, Frank
Meine Meinung steht fest. Bitte verwirrt mich nicht mit Tatsachen!
blablubbb
Mitglied
Beiträge: 10
Registriert: 18.10.2007 22:55
Wohnort: Augsburg

Re: Benutzerdefinierte Profilfelder ausgeben?

Beitrag von blablubbb »

Also wenn Du dieses Feld in der Mitgliederliste (memberlist.php) oder in dem Miniprofil neben einem Post augeben willst, so reicht es aus, das Template zu modifizieren, also "memberlist_body.html" oder "viewtopic_body.html", denn diese Variablen werden standatmäßig an das Template schon übergeben (sofern das in der APC bei Serverlast oder so richtig eingestellt ist). in der viewtopic_body kannst Du über IF postrow.S_PROFILE_PROFILEINTRAG prüfen ob es einen Eintrag in dem Zusätzlichen Profilfeld "profileintrag" gibt (die Buchstaben werden in große Buchtaben gewandelt für den Variablennamen im Template) hängt man dann noch ein "_VALUE" an den Variablennamen dran, erhält man den Wert der Variable, also das was der user eingegeben hat... also "{postrow.S_PROFILE_PROFILEINTRAG_VALUE}" wäre das in diesem Beispiel... bei der Mitgliederliste hättest Du dann statt "postrow." ein "memberlist." und wenn Du die WAriable noch irgenwie verarbeiten willst, so empfehle ich Dir das in der Datei includes/functions_profile_fields.php zu tun, wo diese Variablen an das Template übergeben werden (dieses php wird eingebunden überall, wo Profileinträge normalerweise auftauchen können). Also wenn Du eine neue Seite gemacht hast, dann würde ich Dir empfehlen diese Datei einzubinden und die Funktionen dort zu benutzen.
Viele Gruesse

blablubbb
rumor
Mitglied
Beiträge: 3
Registriert: 19.06.2009 16:46

Re: Benutzerdefinierte Profilfelder ausgeben?

Beitrag von rumor »

Danke euch beiden für die Hilfe, das von Frank1604 klappt auch problemlos. :)
Antworten

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