Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.8 veröffentlicht (17.10.16)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Historie für Editierungen
#1
Weil es keine Historie für Editierungen gibt, hatte ich die Idee, dass man das doch in der Datenbank irgendwo sehen müssen könnte, wo wann welcher Beitrag jeweils editiert wurde; bzw. wo man die Editierungen geordnet nach Editierdatum auflisten kann. Leider kann ich aber die Position nicht finden.

Eine Auflistung ist auch nicht unbedingt nötig, mir würde es schon reichen, wenn ich weiß, wie ich das mit PhpMyAdmin in der Datenabnk MySQL herausbekomme, ob und wo z.B. am 1.1.2006 ein User, Mod oder Admin einen Beitrag editierte.

Es wäre sehr nett, wenn das hier jemand mitteilen könnte in diesem Thread. Danke.
#2
Also eine Historie der Editierungen, wann was geändert wurde fände ich nicht so toll, da unnötig Platz in der Datenbank verbraten würde. Das ist ja so auch nicht vorgesehen. Wenn ich das richtig sehen, dann wird auch in der Datenbank nur der Zeitpunkt der letzten Editierung festgehalten. Korrigiert mich, wenn ich falsch liege. Ich finde es so wie es ist gut.

Gruß
Boardie05
#3
Boardie hat recht. In der Datenbank wird aus Performance und Platzgründen nur gespeichert, wer das letzte Mal editiert hat. Um das umzusetzen müsstest du jedes mal, wenn ein Beitrag editiert wird, eine Datenbankabfrage machen und das seperat speichern.
Vantage-Forum: http://vantage-forum.de/
#4
Also, in irgendeinem Beitrag im Forum steht doch der Vermerk, dass User xyz diesen Beitrag am ... editiert hat. Diese Info müsste doch auch irgendwo in der Datenbank zu finden sein. Aber wo bitte?

Unter >mybb_posts - Anzeige< sehe ich eine Tabelle, wo alle möglichen Angaben zu Beiträgen sind. Das Datum der letzten Editierung finde ich da aber nicht. Diese müsste aber irgendwo in der Datenbank auch registriert sein. Leider kann ich diese Stelle nicht finden.

Wenn mir hier keiner helfen kann, müsste ich alle möglichen Tabellen abspeichern, eine Editierung im Forum machen, und dann wieder alle Datenbankseiten abspeichern; und schauen, wo sich was verändert hat. Das wäre aber eine Menge Arbeit für mich.

Es geht mir nicht um die jeweils alten umeditierten Texte, die nun nicht mehr vorhanden sind; sondern ich möchte doch nur über die Datenbank herausfinden, wer z.B. am 1.1.2006 einen Beitrag editiert hat.
#5
Zitat:Also, in irgendeinem Beitrag im Forum steht doch der Vermerk, dass User xyz diesen Beitrag am ... editiert hat. Diese Info müsste doch auch irgendwo in der Datenbank zu finden sein. Aber wo bitte?

Unter >mybb_posts - Anzeige< sehe ich eine Tabelle, wo alle möglichen Angaben zu Beiträgen sind. Das Datum der letzten Editierung finde ich da aber nicht. Diese müsste aber irgendwo in der Datenbank auch registriert sein. Leider kann ich diese Stelle nicht finden.
Doch, in der Tabelle mybb_posts steht edittime, das ist der Zeitpunkt des letzten Edits.

Zitat:Wenn mir hier keiner helfen kann, müsste ich alle möglichen Tabellen abspeichern, eine Editierung im Forum machen, und dann wieder alle Datenbankseiten abspeichern; und schauen, wo sich was verändert hat. Das wäre aber eine Menge Arbeit für mich.
Du kannst nicht erwarten, dass wir dir innerhalb von 12 Stunden helden können. Warte doch erstmal ab.

Zitat:Es geht mir nicht um die jeweils alten umeditierten Texte, die nun nicht mehr vorhanden sind; sondern ich möchte doch nur über die Datenbank herausfinden, wer z.B. am 1.1.2006 einen Beitrag editiert hat.
Das ist ohne Änderung nicht möglich.
Vantage-Forum: http://vantage-forum.de/
#6
Ich würde sagen, dass eine Änderung nicht unbedingt nötig ist, es würde mir auch so reichen, wie es jetzt ist, danke. Ich habe jetzt gesehen, dass unter Edittime jeweils eine Nummer ist. An der Größe dieser Zahl kann man die Editierreihenfolge erkennen, das reicht schon. Es wird dort nicht nur der jeweils letzte Edit angezeigt, sondern alle Edits, wo das Editieren noch möglich ist.

Bei Beiträgen die nicht mehr editiert werden können, wird keine Zahl angezeigt, das muss auch nicht sein, weil, wenn ich eine Zeitbegrenzung für’s Editieren einstelle, brauche ich nicht in die Datenbank reinschauen, da reicht es, wenn ich editierte Beiträge direkt im Forum kontrolliere.

Diese Zahlen waren mir zuerst nicht aufgefallen, weil ich zu der zeit zufällig keine Beiträge im Forum hatte, die noch editiert werden konnten; also waren in der Spalte auch keine Zahlen.
#7
Nach nunmehr längerer Zeit möchte ich zu diesem Thema hiermit meine neuesten "Erkenntnisse" kundtun. Eine Editierhistory ist nicht sehr geeignet, um Editierungen von Usern zu überwachen. Denn wenn bspw. ein User seinen Beitrag innerhalb einer halben Stunde 20 mal editierte, ist nur die letzte Editierversion und dessen Editierdatum relevant. Eine History würde aber jede Editierzeit akribisch aufzeichnen.

Wenn man mit der Suchfunktion Beiträge geordnet nach Editierdatum auflisten lassen könnte, wäre das aber wirklich genial. Bei so einer Suche würde nämlich bei jedem Beitrag nur das jeweils letzte Editierdatum maßgebend sein. Auch hätte das den Vorteil, dass dabei ein bestimmtes Forum ausgewählt werden könnte.

Es nützt ggf. wenig, wenn nur der Hauptadmin in der Datenbank schauen kann, welche Beiträge jeweils (mit Editiervermerk) editiert wurden; denn wenn ein Admin in einem Forum Moderatoren hat, die jeweils bestimmten Foren zugewiesen sind, möchten die auch sehen können, welche Beiträge jeweils editiert wurden.

Und sie möchten auch die Kontrolle über nur diejenigen editierten Beiträge haben, die sich jeweils in ihrem zugewiesenen Bereich befinden. Um dieses Ziel zu erreichen, habe ich eine Idee. Wie wäre es, wenn bei jedem Editiervorgang das Editierdatum auch als neues Erstellungsdatum (in die Datenbank) eingetragen werden würde und dadurch der Beitrag jeweils ans Ende des Threads rutscht?

Wenn man nämlich in der Datei post.php (/inc/datahandlers/) edittime durch dateline ersetzt, geschieht nämlich genau das. Bei jeder Editierung erscheint dadurch das Editierdatum nicht nur im Editiervermerk, sondern das Erstellungsdatum wird durch das Editierdatum ersetzt. Dieses Verhalten ist eigentlich nicht unlogisch, denn wenn ein Beitrag editiert wird, ist es doch mehr oder weniger ein neuer Beitrag.

Bei der Forenübersicht wird das aber nicht berücksichtigt. Das System zeigt als letzten Beitrag in jedem Thread jeweils den zuletzt erstellten Beitrag an ohne das Editier- bzw. Erstellungsdatum zu berücksichtigen. Vermutlich wird einfach der Beitrag mit der höchsten Beitrags-ID angezeigt. Auch wenn man bei einer Suche die Suchergebnisse nach Themen anzeigen lässt, ist diese Reihenfolge so.

Wenn man aber die Suchergebnisse nach Beiträgen auflistet, wird das Erstellungsdatum der Beiträge dabei berücksichtigt, wodurch dadurch auch die jeweils neu editierten Beiträge jeweils entsprechend weit oben angezeigt werden.

Dieses zwiespältige Verhalten ist im ersten Moment zwar etwas verwirrend, letztlich ist es aber m.E. doch nützlich für die User, die dadurch so was wie "wählen" können. Über die Forenübersicht erfahren die User, welche Threads jeweils die wirklich neuesten Beiträge enthalten, und nicht die mit den neuesten Editierungen. Bei Aufruf des Threads sind aber die jeweils neu editierten Beiträge am Ende.

Und wenn Moderatoren oder User wissen möchten, welche Beiträge neu editiert wurden, können User mit der Suchfunktion alle Beiträge auflisten lassen. Dabei werden aber auch die nicht editierten Beiträge aufgelistet. Dazu müssten user nach dieser Zeichenfolge suchen, denn mit leerem Suchfeld weigert sich die Suche leider:
Code:
q or w or e or r or t or z or u or i or o or p or ü or a or s or d or f or g or h or j or k or l or ö or ä or y or x or c or v or b or n or m
Nun könnte man einwenden, dass dadurch ein Wirrwarr entsteht, bzw. dass Diskussionsverläufe dadurch zerstört werden. Dem widerspreche ich aber. Weil Editierungen sowieso Diskussionsverläufe zerstören. Wenn nämlich ein Thread quasi als Chatersatz von den Moderatoren gedacht ist, sollten sie sowieso die Editierung abschalten oder wenigstens auf eine kurze Zeit begrenzen.

Wo ein Thread aber mehr für die Präsentation von Inhalten gedacht ist, und/oder die Antwortbeiträge den alleinigen Zweck haben sollen, dass sie jeweils alle Antworten bzw. Kommentare zum Basisbeitrag sein sollen, da stört es nicht, wenn sich die Reihenfolge der Beiträge ändert. Der Ersteller des Basisbeitrages sollte aber im zweiten Fall angewiesen werden, seinen Beitrag nicht zu editieren, weil dieser sonst auch nach unten rutschen würde.

Man beachte auch, dass Basisbeiträge nicht separat gelöscht werden können. Falls Erlaubnis vorhanden, wird der gesamte Thread gelöscht. Wenn aber durch eine Editierung der Basisbeitrag nicht mehr ganz oben ist, kann er dadurch separat gelöscht werden. Eine andere Möglichkeit ist es auch, dass User in ihren Basisbeitrag nur den Betreff schreiben, oder ihn fast leer lassen, und stattdessen ihren eigentlichen Basisbeitrag als (ersten) Antwortbeitrag schreiben.


Übrigens hatte ich alle Dateien des Boards heruntergeladen und mit dem Programm FileLocator Pro nach der Zeichenfolge 'edittime' gesucht. Durch Probieren hatte ich in allen möglichen Dateien diese Zeichenfolge durch 'dateline' ersetzt, bis ich wusste, wo ich es ersetzen musste. Diese beiden Zeichenfolgen hatte ich in der Datenbank unter >[Präfix_]posts - Anzeigen< aus den Spaltenköpfen ermittelt.
#8
forumtreff schrieb:Wenn man mit der Suchfunktion Beiträge geordnet nach Editierdatum auflisten lassen könnte, wäre das aber wirklich genial. Bei so einer Suche würde nämlich bei jedem Beitrag nur das jeweils letzte Editierdatum maßgebend sein. Auch hätte das den Vorteil, dass dabei ein bestimmtes Forum ausgewählt werden könnte.
Das ganze ist natürlich über Modifikationen möglich, allerdings sehe ich persönlich darin kein Feature, das in der Basisversion enthalten sein wird.
forumtreff schrieb:Es nützt ggf. wenig, wenn nur der Hauptadmin in der Datenbank schauen kann, welche Beiträge jeweils (mit Editiervermerk) editiert wurden; denn wenn ein Admin in einem Forum Moderatoren hat, die jeweils bestimmten Foren zugewiesen sind, möchten die auch sehen können, welche Beiträge jeweils editiert wurden.
Du kannst einen Vermerk in den Beiträgen anzeigen lassen, in dem der Autor und der Zeitpunkt der Bearbeitung angezeigt werden.
forumtreff schrieb:Wie wäre es, wenn bei jedem Editiervorgang das Editierdatum auch als neues Erstellungsdatum (in die Datenbank) eingetragen werden würde und dadurch der Beitrag jeweils ans Ende des Threads rutscht?
Ein bearbeiteter Beitrag ist kein neuer Beitrag. Außerdem würde dann der Sinn einer Diskussion zerrissen, wenn beispielsweise der erste Beitrag ans Ende rutscht.
forumtreff schrieb:Wenn man nämlich in der Datei post.php (/inc/datahandlers/) edittime durch dateline ersetzt, geschieht nämlich genau das. Bei jeder Editierung erscheint dadurch das Editierdatum nicht nur im Editiervermerk, sondern das Erstellungsdatum wird durch das Editierdatum ersetzt. Dieses Verhalten ist eigentlich nicht unlogisch, denn wenn ein Beitrag editiert wird, ist es doch mehr oder weniger ein neuer Beitrag.

Bei der Forenübersicht wird das aber nicht berücksichtigt. Das System zeigt als letzten Beitrag in jedem Thread jeweils den zuletzt erstellten Beitrag an ohne das Editier- bzw. Erstellungsdatum zu berücksichtigen.
Die letzten Beiträge werden aus dem Cache ausgelesen. Dieser muss aktualisiert werden.

Vielleicht solltest du darüber nachdenken die Bearbeitung von Beiträgen zu unterbinden anstatt so viel Aufwand in die Kontrolle zu investieren. Vielleicht gibt es auch eine andere Forensoftware, die das so handhabt. Beim MyBB jedenfalls ist viel Arbeit nötig, um dieses Verhalten zu erreichen.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
#9
Michael schrieb:Das ganze ist natürlich über Modifikationen möglich, allerdings sehe ich persönlich darin kein Feature, das in der Basisversion enthalten sein wird. Du kannst einen Vermerk in den Beiträgen anzeigen lassen, in dem der Autor und der Zeitpunkt der Bearbeitung angezeigt werden.
Du meinst also, dass Du darin kein erstrebenswertes Feature siehst, das in der Basisversion enthalten sein sollte. Das wundert mich auch nicht, wenn Du so denkst, weil Du dann schreibst, dass man ja einfach den Editiervermerk aktivieren kann.

Und wie erfahre ich dann, wo die neu editierten Beiträge sind, um sie kontrollieren zu können, wenn das Borad aus mehr als drei Beiträgen besteht, bspw. aus 3 Millionen?

Michael schrieb:Ein bearbeiteter Beitrag ist kein neuer Beitrag. Außerdem würde dann der Sinn einer Diskussion zerrissen, wenn beispielsweise der erste Beitrag ans Ende rutscht.
Dass ein bearbeiteter Beitrag kein neuer Beitrag ist, ist genauso falsch, als wenn man sagen würde, dass ein bearbeiteter Beitrag (doch) ein neuer Beitrag sei.

Mir wäre aber ein zerrissener Diskussionsverlauf lieber, als ggf. eine teure Abmahnung von einem Rechtsanwalt einstecken zu müssen, weil User heimlich durch Editieren strafrechtlich relevante Inhalte in alte Beiträge einfügten.

Auch wird ein Argument nicht dadurch überzeugender, indem man einfach das bereits (von mir) vorgetragene Gegenargument ignoriert und man statt dessen auf diese einzugehen, einfach dass erste Argument erneut erwähnt.

Michael schrieb:Die letzten Beiträge werden aus dem Cache ausgelesen. Dieser muss aktualisiert werden.
Stimmt nicht. Ich habe alle Caches aktualisiert. Am Verhalten des Boards bezüglich der Reihenfolge der angezeigten Threads hat sich nichts dadurch geändert. Das habe ich mir auch gleich gedacht, denn beim phpBB3 (Olympus) ist das Verhalten genauso. Denn dort habe ich inzwischen auch schon herausgefunden und getestet, welche Datei man wie ändern muss, um dieses Verhalten zu haben.

Michael schrieb:Vielleicht solltest du darüber nachdenken die Bearbeitung von Beiträgen zu unterbinden anstatt so viel Aufwand in die Kontrolle zu investieren. Vielleicht gibt es auch eine andere Forensoftware, die das so handhabt. Beim MyBB jedenfalls ist viel Arbeit nötig, um dieses Verhalten zu erreichen.
Welches Verhalten meinst Du? Und darüber habe ich mir schon Gedanken gemacht und das Ergebnis bereits in meinem vorigen Beitrag geschildert. Den Luxus Beiträge bearbeiten zu können stufe ich aber grundsätzlich wichtiger ein, als dass irgendwelche Diskussionsverläufe gestört werden könnten.

Ich habe in den letzten 2 Jahren schon sehr viele Forensysteme getestet, aber leider gibt es anscheinend kein einziges, wo sich die Programmierer darüber Gedanken gemacht haben, wie Moderatoren Editierungen überwachen könnten.

Zudem wird es in meinem zukünftigen Board Foren mit unterschiedlichen Rechteeinstellungen geben. Bspw. Foren mit deaktivierter Editier- und Löschmöglichkeit für Diskussionen, quasi als Chatersatz; und Foren mit Editier- und Löschmöglichkeit, für das Veröffentlichen von (hoffentlich) bedeutenden Inhalten.
#10
forumtreff schrieb:Stimmt nicht. Ich habe alle Caches aktualisiert. Am Verhalten des Boards bezüglich der Reihenfolge der angezeigten Threads hat sich nichts dadurch geändert. Das habe ich mir auch gleich gedacht, denn beim phpBB3 (Olympus) ist das Verhalten genauso. Denn dort habe ich inzwischen auch schon herausgefunden und getestet, welche Datei man wie ändern muss, um dieses Verhalten zu haben.
Beim Editieren fehlen die Queries, die die Daten aktualisieren. (Das wird ja normalerweiße nicht gebraucht.) Du müsstest den Code von der Beitragserstellung übernehmen und vielleicht auch anpassen.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.