Seite 2 von 2
Re: Spezielles Profilfeld - Für Mitglieder nicht änderbar
Verfasst: 29.03.2010 08:10
von Frank1604
Das geht alles über ein benutzerdefiniertes Profilfeld. Bei den Optionen setzt du das Häkchen bei "Bei der Themen-Ansicht anzeigen:" und lässt das Häkchen "Im persönlichen Bereich des Benutzers anzeigen:" leer.
Somit wird es in den Beiträgen angezeigt, der User kann es selbst aber nicht ändern.
Wenn du das Feld als Admin ändern möchtest, klickst du auf den User -> Benutzer administrieren -> oben "Profil" auswählen und das Feld ändern.
Re: Spezielles Profilfeld - Für Mitglieder nicht änderbar
Verfasst: 29.03.2010 14:14
von RubberDuck
Danke Frank. Das mit dem Weg über das Profil habe ich natürlich nicht Probiert
Wie stelle ich es aber nun am besten an, das nach dem Anlegen des Feldes für alle Benutzer der Standardwert gesetzt ist. Will nun nicht alle Benutzer per Hand bearbeiten, denn der Wert wird ja leider erst dann übernommen wenn ich ihn per Hand eingebe, oder aber ein Benutzer sein Profil speichert.
Vermute mal das müsste dann direkt in der Datenbank gemacht werden? Stehen die Profilfelder in der Usertabelle?
Gruß
Rene
Re: Spezielles Profilfeld - Für Mitglieder nicht änderbar
Verfasst: 29.03.2010 14:20
von Frank1604
Bei Neuregistrierungen sollte der Wert automatisch drin sein, problematischer sind die schon bestehenden. Wieviele sind das? Entweder hier mit der Hand Benutzer administrieren und Profil speichern, oder eine SQL Abfrage basteln die die Arbeit übernimmt. Was für eine Feldart ist dein dein cpl?
Re: Spezielles Profilfeld - Für Mitglieder nicht änderbar
Verfasst: 29.03.2010 14:28
von RubberDuck
Bei Neuanmeldungen wird es übernommen, das habe ich schon probiert. Benutzer sind es knapp 500, von daher wäre das setzen über die DB schon von Vorteil
Es handelt sich um ein Optionsfeld mit "Ja" und "Nein" als Wert, wobei "Nein" der Standard ist.
Gruß
Rene
Re: Spezielles Profilfeld - Für Mitglieder nicht änderbar
Verfasst: 29.03.2010 15:17
von Frank1604
Ok. Bitte erstmal ein Backup machen. Dann folgende SQL Befehle absetzen:
Code: Alles auswählen
INSERT INTO `phpbb_profile_fields_data` (user_id)
(SELECT u.user_id
FROM phpbb_users u
LEFT JOIN phpbb_profile_fields_data p
ON u.user_id = p.user_id
WHERE p.user_id is NULL)
Code: Alles auswählen
UPDATE `phpbb_profile_fields_data`
SET pf_deinfeld = 0 WHERE pf_deinfeld is NULL
Statt "pf_deinfeld" setzt du deinen Feldnamen ein (beginnt immer mit pf_). Evtl. noch den Tabellenpräfix anpassen.
Re: Spezielles Profilfeld - Für Mitglieder nicht änderbar
Verfasst: 29.03.2010 21:17
von RubberDuck
Hallo Frank
Ok, das habe ich ausgeführt. In "phpbb3_profile_fields_data" stehen jetzt alle User-Ids drin und für das jeweilige Feld ist "0" eingetragen. Allerdings wird das Feld dennoch weder im Kurzprofil (neben den Beiträgen) noch im Profil des Users angezeigt.
Wenn ich jetzt über den Adminbereich einen User bearbeite und dessen Profil aufrufe, dann ist bei dem Feld keiner der beiden Werte in der Auswahl gesetzt, also weder Ja, noch Nein.
Gruß
Rene
Re: Spezielles Profilfeld - Für Mitglieder nicht änderbar
Verfasst: 29.03.2010 21:25
von Frank1604
Ok, war mein Fehler. Das Feld verlangt für "nein" eine 2 statt eine 0.
Führe bitte noch folgende SQL Anweisung aus:
Code: Alles auswählen
UPDATE `phpbb_profile_fields_data`
SET pf_deinfeld = 2 WHERE pf_deinfeld = 0
Re: Spezielles Profilfeld - Für Mitglieder nicht änderbar
Verfasst: 29.03.2010 21:49
von RubberDuck
Jup, ist bei mir eine 1 für Nein und eine 2 für Ja

Liegt wohl daran in welcher Reihenfolge man die Werte eingibt.
Vielen Dank für Deine Hilfe! Jetzt klappt es!
Gruß
Rene
Re: Spezielles Profilfeld - Für Mitglieder nicht änderbar
Verfasst: 29.03.2010 21:56
von Frank1604
Joar, gut möglich, aber dafür hab ich dich ja vorher extra nen Backup machen lassen

Schön das es jetzt hinhaut.
Re: Spezielles Profilfeld - Für Mitglieder nicht änderbar
Verfasst: 29.03.2010 22:03
von RubberDuck
Frank1604 hat geschrieben:Joar, gut möglich, aber dafür hab ich dich ja vorher extra nen Backup machen lassen

Schön das es jetzt hinhaut.
Das mit dem Backup vorher ist schon ins Blut übergegangen und gehört zum normalen Ablauf
Gruß
Rene