Seite 1 von 1

Zusätzliches "Benutzerinfofeld" bei viewtopic

Verfasst: 06.05.2007 13:09
von Florian48
Hallo zusammen,

ich hoffe ich bin hier im richtigen Forum gelandet.
Ich habe ein Problem, und zwar würde ich gerne eine weitere Info aus dem Benutzerprofil (also z.B. "Beruf") bei der Viewtopic-Ansicht anzeigen lasssen.

Also dass das es dann z.B. so aussieht:

Anmeldedatum: 14.04.2006
Beiträge: 15
Wohnort: Phantasialand
Beruf: Metzger

Welche Dateien muss ich dafür wie abändern? Ich habe nicht wirklich viel Ahnung von php und deswegen komme ich da irgendwie nicht weiter.

Habe zuerst die viewtopic_body.tpl abgeändert, bzw. ergänzt:

Code: Alles auswählen

{postrow.POSTER_JOINED}<br />{postrow.POSTER_POSTS}<br />{postrow.POSTER_FROM}<br />{postrow.POSTER_BERUF}
Das müsste ja soweit richtig, aber auch das einfachste an der Sache sein.

Dann habe ich mich an der viewtopic.php veruscht...das allerdings ziemlich dilletantisch und erfolglos... :oops:
Da mein Ergebniss ja eigentlich genauso aussehen soll, wie "POSTER_FROM", habe ich das Dokument einfach danach durchsucht, die entsprechenden Stellen kopiert und dann einfach das "FROM" durch "BERUF" ersetzt.
Wie ich am Ergebnis sehen kann, habe ich mir das etwas zu einfach vorgestellt. Weiß jemand, wie es richtig geht? Muss noch eine andere Datei abgeändert werden?

Ich kann auch gerne alle Änderungen, die ich an viewtiopic.php getätigt habe ich auflisten, wenn das weiterhilft.

Viele Grüße,
Florian

Verfasst: 06.05.2007 13:34
von Miriam
Vom Ansatz her schon mal sehr schön.... wirklich.
Verlinke mal bitte Deine viewtopic.php. KB:datei

Verfasst: 06.05.2007 13:55
von StanleyG
Hallo Florian48,

also:
1. das Feld in der User-Tabelle, wo der Beruf gespeichert wird, heißt nicht user_beruf, sondern user_occ (Occupation).
2.
Jetzt binden wir das Feld in die viewtopic.php ein:
a) suche die Zeile mit der sql-Abfrage, die beginnt mit:

Code: Alles auswählen

$sql = "SELECT u.username, u.user_id, u.user_posts, u.user_from, ...
dort fügst Du zwischen das u.user_from und das Komma folgendes ein:

Code: Alles auswählen

, u.user_occ
damit es heißt:

Code: Alles auswählen

$sql = "SELECT u.username, u.user_id, u.user_posts, u.user_from, u.user_occ, ...
b) jetzt bilden wir aus dem Inhalt des ausgelesenen Feldes eine Variable.
Suche bitte die Zeile:

Code: Alles auswählen

$poster_from = ( $postrow[$i]['user_from'] && $postrow[$i]['user_id'] != ANONYMOUS ) ? $lang['Location'] . ': ' . $postrow[$i]['user_from'] : '';
danach fügst Du ein:

Code: Alles auswählen

$poster_occupation = ( $postrow[$i]['user_occ] && $postrow[$i]['user_id'] != ANONYMOUS ) ? $lang['Occupation'] . ': ' . $postrow[$i]['user_occ'] : '';
c) jetzt weisen wir den Inhalt dieser Variablen einer Template-Variable zu:
Suche die Zeile:

Code: Alles auswählen

'POSTER_FROM' => $poster_from,
und füge danach ein:

Code: Alles auswählen

'POSTER_OCCUPATION' => $poster_occupation,
3. Und jetzt brauchst Du nur noch in der viewtopic.tpl an der Stelle, wo Du das haben willst, einzufügen:

Code: Alles auswählen

{postrow.POSTER_FROM}
Jetzt müsste es klappen.
Stanley

Verfasst: 06.05.2007 14:26
von Florian48
Super, jetzt läuft es. Vielen Dank für die extrem schnelle Hilfe!

Hatte auch genau die gleichen Zeilen abgeändert, dacht nur, ich könnte mir den Namen der Variabel selbst aussuchen und die Verbindung zum "Berufsfeld" würde durch $lang['Occupation'] hergestellt.

Nochmals vielen Dank und schöne Grüße,
Florian

Verfasst: 06.05.2007 15:40
von Miriam
StanleyG hat geschrieben:

Code: Alles auswählen

'POSTER_FROM' => $poster_from,
und füge danach ein:

Code: Alles auswählen

'POSTER_OCCUPATION' => $poster_occupation,
3. Und jetzt brauchst Du nur noch in der viewtopic.tpl an der Stelle, wo Du das haben willst, einzufügen:

Code: Alles auswählen

{postrow.POSTER_FROM}
Jetzt müsste es klappen.
Aber es klappt auch nur, wenn der geneigte Leser mitdenkt.... *ggg*

Aber ansonsten könntest Du das glatt in der KB einpflegen, Stanley.