Seite 1 von 1

[gelöst] Benutzerdefinierte Profilfelder ausgeben?

Verfasst: 05.05.2010 21:04
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..

Re: Benutzerdefinierte Profilfelder ausgeben?

Verfasst: 06.05.2010 08:45
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'] 

Re: Benutzerdefinierte Profilfelder ausgeben?

Verfasst: 06.05.2010 14:21
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.

Re: Benutzerdefinierte Profilfelder ausgeben?

Verfasst: 06.05.2010 15:36
von rumor
Danke euch beiden für die Hilfe, das von Frank1604 klappt auch problemlos. :)