MyBB.de Forum

Normale Version: Inhalt eigener Profilfelder in eigenem Template
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo liebe MyBBoardler!

Ich habe wieder mal eine Frage. Erstellt hab ich mir ein eigenes Template das es ermöglicht selbsterstellte Profilfelder anzuzeigen und neue Inhalte der Datenbank zu übergeben. Soweit so gut. Das Problem ist das wenn schon eine Eingabe gemacht wurde, diese nicht im Profilfeld zurück gegeben wird. Das Profilfeld erscheint also leer. Bei einem einzelnen sicher kein Problem. Habe ich jedoch mehrere müssten jedesmal alle Eingaben wiederholt werden um keine leeren Felder zu übergeben. Das ist im UserCP unter Zusätzliche Angaben so schön befüllt. Genauso möchte ich es in meinem Template auch haben. Ich krieg es einfach nicht auf die Reihe.
So sieht mein Template aus (gekürzt aud das wesentliche):
Code:
<html>
<head>
<title>{$mybb->settings[\'bbname\']} - {$lang->edit_profile}</title>
{$headerinclude}
</head>
<body>
{$header}
<form action=\"usercp.php\" method=\"post\" name=\"input\">
<input type=\"hidden\" name=\"my_post_key\" value=\"{$mybb->post_code}\" />
<table width=\"100%\" border=\"0\" align=\"center\">
<tr>
<td>


<fieldset class=\"trow2\">
<legend><strong>Zusätzliche Informationen</strong></legend>
<table width=\"100%\" cellspacing=\"0\" cellpadding=\"4\">

<tbody>
<tr>
<td><span class=\"smalltext\">
<a style=\"text-decoration: none;\" title=\"Name - Interne Liste\">Name</a>:</span></td>
</tr>
<tr>
<td><input type=\"text\" value=\"{$profile_fields[fid5]}\" maxlength=\"255\" size=\"0\" class=\"textbox\" name=\"profile_fields[fid5]\"/></td>
</tr>
</tbody></table>
</fieldset>


<div align=\"center\">
<input type=\"hidden\" name=\"action\" value=\"do_profile\" />
<input type=\"submit\" class=\"button\" name=\"regsubmit\" value=\"Senden\" />
</div>
</td>
</tr>
</table>
</form>
{$footer}
</body>
</html>

Ich dachte {$profile_fields[fid5]} würde den Inhalt des Profilfeld 5 als Value zurückgeben. Ist leider nicht der Fall. Bin für einen Tritt in die richtige Richtung äußerst dankbar!

Danke schon mal vorab.
LG
?
In welchem Script wird dein Template eingebunden?

Sofern vorher bereits die Profilfelder ausgelesenw erden, stehen sie entsprechend in einer Variablen zur Verfügung.
Eventuell musst du aber auch selbst erst dafür sorgen, dass sie zur Verfügung stehen, indem du sie aus der Tabelle mybb_userfields ausliest und in eienr Variablen speicherst (im Script).

Das Template sieht nach UserCP aus. Eventuell stehen die Profilfelder schon in $user['fidX'] zur VErfügung (sicher bin ich mir aber nicht).
Hallo Zwoetzen!

Ich habe die memberlist.php modifiziert. Umbenannt in privatliste.php. Das Template wird so:
Code:
$mybb->input[\'mode\'] == \'edit\') {
    // Lade Änderungsansicht
    eval(\"\\$privatliste .= \\\"\".$templates->get(\"pplist_edit\").\"\\\";\");

$user[\'fid5\'] um bei meinem Beispiel zu bleiben hab ich probiert. Geht leider nicht. Obwohl gleicher Code in der Mitgliederliste selbst ausgegeben wird. Ich bin ratlos.
Ist denn $user beim Aufruf des Templates definiert?

NetHunter

Hallo,
aud die Art: value="{$mybb->user[fid5]}" sollte es funktionieren.
1) Es müsste {$mybb->user['fid5']} heißen. Wink
2) Bringen die eigenen Daten bei der Mitgliederliste wenig. Toungue
Hallo!
Es funktioniert. Großes Dankeschön an euch.
@ Dragon: Die eigenen Daten bringen schon was wenn man sie per Profilfeld geändert übertragen will. Meine Mitgliederliste hat nicht mehr viel mit der originalen gemeinsam.
Jedenfalls vielen Dank!