MyBB.de Forum
Avatare verzerrt nach Datenbankübernahme - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: MyBB 1.8.x (https://www.mybb.de/forum/forum-87.html)
+--- Forum: Allgemeiner Support (https://www.mybb.de/forum/forum-88.html)
+--- Thema: Avatare verzerrt nach Datenbankübernahme (/thread-35599.html)



Avatare verzerrt nach Datenbankübernahme - Buebchen - 27.05.2018

URL zum Forum: www.herkules-quad-forum.de
Welche Styles nutzt du? Cerulean
Hast du Plugins installiert? Welche? (wenn möglich bitte Links zu den Plugins angeben)
Welche MyBB-Version benutzt du? 1.8.15
Welche PHP-Version benutzt du? 7.025
Welche Datenbank benutzt du? (mit Version) MySQL
Hast du ein Update/Upgrade durchgeführt? Ja, von 1.8.11 auf 1.8.15
Hast du dein MyBB Forum von einer anderen Boardsoftware konvertiert? SMF 2.x
Seit wann tritt das Problem auf? von Anfang an
Wird eine Fehlermeldung ausgegeben? Welche? Wann? Nein

Hallo,

ich habe heute das Forum von SMF nach MyBB übernommen. Zuerst MyBB 1.8.11 installiert, mit Merge das Forum übernommen und dann das Update auf 1.8.15 gemacht.
Die Avatare wurden von Anfang an verzerrt angezeigt. Sie haben eine Größe von 65x48 Pixel, werden aber mit 48x65 Pixel angezeigt.

Gibt es da einen Fix oder irgendwo eine Einstellung?

Danke für die Hilfe :-)

Gruß
Andy


RE: Avatare verzerrt nach Datenbankübernahme - Jockl - 27.05.2018

Hast Du mal die Einstellungen für Avatare in der Konfiguration angepasst?
ACP -> Konfiguration -> Profil


RE: Avatare verzerrt nach Datenbankübernahme - Buebchen - 27.05.2018

Ich habe die Größe umgeändert, hat sich nichts geändert.

Dann habe ich den Avatar neu hochgeladen, jetzt wird er korrekt angezeigt, Seitenverhältnis stimmt also...

Aber es muß doch auch irgendwie anders gehen?

Gruß
Andy


RE: Avatare verzerrt nach Datenbankübernahme - frostschutz - 27.05.2018

Das scheint ein Fehler im Merge System zu sein.

Dort wird an einigen Stellen avatardimensions auf height|width gesetzt, aber es müsste width|height sein, wenn ich den Code vom Merge System und den von MyBB selbst so auf die Schnelle richtig deute.

Bei quadratischen Avatars egal, bei nahezu-quadratischen unauffällig, aber bei Portrait-Avatars ist es dann genau verkehrt herum gestaucht.

Nicht selbst getestet.

Wenn es daran liegt, könntest du den Merge nochmal machen oder die Werte per Query vertauschen.


RE: Avatare verzerrt nach Datenbankübernahme - Buebchen - 27.05.2018

(27.05.2018, 23:24)frostschutz schrieb: ....

Wenn es daran liegt, könntest du den Merge nochmal machen oder die Werte per Query vertauschen.

Wie könnte ich das genau machen?

Dankeschön :-)


RE: Avatare verzerrt nach Datenbankübernahme - frostschutz - 28.05.2018

Ja das ist jetzt die große Preisfrage nicht?

Schon lange kein SQL Query mehr mit Stringverquirlungen gebaut, auf eigenes Risiko, mach ein Backup von deiner users Tabelle vorher.

Code:
UPDATE mybb_users
SET avatardimenions = CONCAT(SUBSTRING(avatardimensions, 3), '|', SUBSTRING(avatardimensions, 1, 1))
WHERE avatardimenions LIKE '_|%';

Code:
UPDATE mybb_users
SET avatardimenions = CONCAT(SUBSTRING(avatardimensions, 4), '|', SUBSTRING(avatardimensions, 1, 2))
WHERE avatardimenions LIKE '__|%';

Code:
UPDATE mybb_users
SET avatardimenions = CONCAT(SUBSTRING(avatardimensions, 5), '|', SUBSTRING(avatardimensions, 1, 3))
WHERE avatardimenions LIKE '___|%';

Drei Queries, erste für Avatare Breite kleiner 10 Pixel, zweite kleiner 100 Pixel, dritte kleiner 1000 Pixel.

Der Haken an der Sache: Avatare die du schon durch neuladen "gefixt" hast sind dann wieder gestaucht und müssen nochmal gefixt werden. :-]


RE: Avatare verzerrt nach Datenbankübernahme - frostschutz - 28.05.2018

uund natürlich hab ich mich bei avatardoiemnbasu x-mal vertippselt.


RE: Avatare verzerrt nach Datenbankübernahme - frostschutz - 28.05.2018

Und ist trotzdem falsch, Mist.

Das zweite Query flippt 80|100 zu 100|80 und dann kommt das dritte Query und macht 100|80 wieder zu 80|100.

Also muss man das in ein einziges Query packen.

Code:
UPDATE mybb_users
SET avatardimensions = CONCAT(
   SUBSTRING(avatardimensions, LOCATE('|', avatardimensions) + 1),
   '|',
   SUBSTRING(avatardimensions, 1, LOCATE('|', avatardimensions) - 1)
)
WHERE avatardimenions LIKE '%|%';



RE: Avatare verzerrt nach Datenbankübernahme - Buebchen - 28.05.2018

Dankeschön für Deine Mühe, da werde ich mich mal einlesen müssen wie so etwas überhaupt funktioniert :-)

Gruß
Andy