MySQL Fehler Beiträge mit Attachment editieren

Fragen zur Bedienung von phpBB 3.0.x, Probleme bei der Benutzung und alle weiteren Fragen inkl. Update auf die neuste phpBB 3.0.14 Version
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
DerTheo
Mitglied
Beiträge: 253
Registriert: 08.07.2011 14:41

MySQL Fehler Beiträge mit Attachment editieren

Beitrag von DerTheo »

Ich habe bei einem Thema einen sehr strangen Fehler, den ich nicht reproduzieren kann.

Ein User hat ein Foto als Attachment hochgeladen, dieses anscheinend gelöscht. Jetzt lässt sich der Thread nicht mehr editieren.
Sobald ich jetzt das Foto wieder als Attachment anhänge, es im Thread anzeigen lasse
blablabla.jpg
kann ich den Thread editieren und spreichern.

Ist das Attachment nich angehängt oder lösche ich
blablabla.jpg
obwohl das attachment noch angehängt ist, kommt beim speichern des Beitrags der Fehler:
SQL ERROR [ mysqli ]

Out of range value adjusted for column 'bbcode_count' at row 1 [1264]

SQL

UPDATE phpbb_stats_bbcodes SET bbcode_count = (bbcode_count - 1) WHERE bbcode = '[/attachment:'

BACKTRACE

FILE: includes/db/mysqli.php
LINE: 163
CALL: dbal->sql_error()

FILE: statistics/includes/functions.php
LINE: 1839
CALL: dbal_mysqli->sql_query()

FILE: posting.php
LINE: 1143
CALL: save_bbcode_smiley_count()
Ich kenne mich null aus mit MySQL, habe aber in der DB stats_bbcodes gefunden, dort gibt es die Struktur namens bbcode_count
Muss ich hier etwas ändern?

Ich habe es mit einem neuen Thread getestet, einen Anhang hinzugefügt und gelöscht, den Fehler konnte ich nicht reproduzieren.
Style: Lucid Lime
Phpbb 3.0.8
DerTheo
Mitglied
Beiträge: 253
Registriert: 08.07.2011 14:41

Re: MySQL Fehler Beiträge mit Attachment editieren

Beitrag von DerTheo »

Habe dem Kompletten Thraed gelöscht, da ich das Problem nicht nehebn konnte.

Grüße
Der Theo
Style: Lucid Lime
Phpbb 3.0.8
Benutzeravatar
sepp71
Mitglied
Beiträge: 919
Registriert: 23.12.2006 00:03

Re: MySQL Fehler Beiträge mit Attachment editieren

Beitrag von sepp71 »

Dieses Problem habe ich nun auch, und zwar mit BBCodes allgemein und ich kann ihn reproduzieren - nur nicht beseitigen :(

Ich verwende selbsterstellte BBCodes (Links zu Amazon) und habe irgendwann einmal von Fassung a [amazon] auf [amazonlink] umgestellt.
Beide BBCodes werden noch unterstützt, der eine ist einfach "deprecated".
Ich habe schon einige Beiträge von Hand über den Beitragseditor auf das neue Schema abgeändert, nun tritt dieser Fehler auf.
Das Hinzufügen eines neuen BBCodes in einen bestehenden Beitrag ist unproblematisch möglich, solange der alte Code erhalten bleibt. Wenn ich den alten BBCode aus dem Beitrag entferne, erscheint die Fehlermeldung. Dasselbe gilt, wenn ich den alten BBCode einfach nur in den neuen "umformuliere" (so dass sich bbcode_count vielleicht gar nicht ändern müßte).

Ich wäre auch bereit, die Anpassung einfach in der MySQL-Datenbank zu machen - frage mich nur, was die dort in der Tabelle posts zugewiesenen kryptischen Zeichen bedeuten sollen:

Code: Alles auswählen

[amazon:3olb5a7j]123456789[/amazon:3olb5a7j] 
1.) Kann ich einfach aus "amazon" "amazonlink" machen - oder ist in der Zeichenfolge "3olb5a7j" noch irgendetwas wichtiges verborgen?
2.) Hat der o.a. DB-Fehler sonstige Risiken und Nebenwirkungen, die eine Behebung gebieten? Hat jemand evtl. doch noch eine Lösung?

Gruß
Sepp

P.S.: Die Fehlermeldung:
Allgemeiner Fehler
SQL ERROR [ mysql4 ]

Out of range value adjusted for column 'bbcode_count' at row 1 [1264]

SQL

UPDATE dr_stats_bbcodes SET bbcode_count = (bbcode_count - 2) WHERE bbcode = '[/amazon:'

BACKTRACE

FILE: includes/db/mysql.php
LINE: 175
CALL: dbal->sql_error()

FILE: statistics/includes/functions.php
LINE: 1839
CALL: dbal_mysql->sql_query()

FILE: posting.php
LINE: 1155
CALL: save_bbcode_smiley_count()
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: MySQL Fehler Beiträge mit Attachment editieren

Beitrag von BNa »

Lösung ist im Post danach
http://www.phpbb.com/community/viewtopi ... 5#p7551325
adjusting the bbcode_id column to be a mediumint(4)
Das bitte via MySql oder MySqlDumper.

In eurem Falle dann bbcode_count statt bbcode_id

Habte ihr allerdings den phpBB Statistics Mod installiert, dann hier weiterlesen
http://www.phpbb.com/customise/db/mod/p ... es-t_84479
Benutzeravatar
sepp71
Mitglied
Beiträge: 919
Registriert: 23.12.2006 00:03

Re: MySQL Fehler Beiträge mit Attachment editieren

Beitrag von sepp71 »

BNa hat geschrieben:Lösung ist im Post danach
http://www.phpbb.com/community/viewtopi ... 5#p7551325
adjusting the bbcode_id column to be a mediumint(4)
Das bitte via MySql oder MySqlDumper.

In eurem Falle dann bbcode_count statt bbcode_id

Habte ihr allerdings den phpBB Statistics Mod installiert, dann hier weiterlesen
http://www.phpbb.com/customise/db/mod/p ... es-t_84479
Super vielen Dank für den Ansatz - auch wenn ich nicht verstehe, in welchem "Post danach" Du meinst.
Den Lösungsansatz (letztlich ja wohl http://www.phpbb.com/bugs/phpbb3/34905) habe ich aber noch nicht ganz nachvollzogen - könntest Du mir noch auf die Sprünge helfen?
Danke!

Sepp

Edit: Habe Deinen Edit jetzt erst gesehen, vielen Dank scon einmal, das wird ja dann eine größere Aktion bei mir... Ich melde mich wieder!
Benutzeravatar
sepp71
Mitglied
Beiträge: 919
Registriert: 23.12.2006 00:03

Re: MySQL Fehler Beiträge mit Attachment editieren

Beitrag von sepp71 »

So ganz hab ich das wohl nicht verstanden, aber mit den Tips bin ich der Sache näher gekommen: In der Tabelle phpbb_stats_bbcodes steht für jeden BBCode ein Zähler (Typ war und ist mediumint 8). Es gibt schon Codes, die viel häufiger vorkommen als meine selbstgebastelten, dementsprechend viel höhere Werte stehen in der Tabelle. Aus irgendwelchen Gründen stand der Wert für den einen selbstgebastelten Code nur noch auf "1". Das ist zu wenig, um zwei abzuziehen, ohne in negative Zahlen zu geraten :)
Ich habe den Wert jetzt manuell auf die Anzahl der Vorkommen des BBCodes in meiner DB (Tabelle ...posts) heraufgesetzt und für den Moment scheint es zu funktionieren.

Den Fix von https://github.com/marc1706/phpBB-Stati ... e3078902af habe ich in meine statistics/functions.php eingebaut, weil ich vermute, dass deshalb bei vorangegangenen Änderungen zuviele Zähler abgezogen worden waren.

Vielen Dank für die Tipps, die mich in die Lage versetzt haben, das hinzubekommen!

Sepp

Edit 20 Minuten später: Ich mußte den Wert im weiteren noch einmal "nachbessern", da er schon wieder auf 0 war. Jetzt habe ich aber alle "alten" Vorkommen entfernt und durch den neuen BBCode ersetzt. stats_bbcodes auf 0 angepasst und den alten BBCode aus dem ACP gelöscht.
-> Ziel erreicht. Dank Dir!
Antworten

Zurück zu „[3.0.x] Administration, Benutzung und Betrieb“